I have just discovered TextMate, and am so far very happy with it,
but I think I just hit a glitch...
I am trying to edit a SQL load file that is about 5M, which shouldn't
be a problem. However, some of the lines are very long, as a complete
website contents is in a single line. I have no idea how many
characters are in this line, but I suspect about 2M worth.
Anyway, TextMate hangs while trying to work with this file. I can't
do much at all. Even a simple act of scrolling hangs. TextEdit does a
reasonably good job with the file though...
Actually, I don't think it is hanging, as it eventually responds
(about 30 seconds later), but it is so slow that it is completely
unusable. Is this a known problem? For me, it is weird files like
this that we need an editor like TextMate to be able to easily handle.
Thanks...
Jim Leask
Hi!
I'm just working on some Tex-Document which uses several dialogues
which I want to enclose in "< "> (the result are those <<
>>-enclosures in the document). Would be cool if that could be added
to the language grammar.
Thanks in advance
Niels
Hey everyone,
Recent TextMate convert here and boy do I love it - trial expiring
within the week, so will be a paying customer from then on. ;)
Have a question, though, with regards to sorting in the Project Drawer.
Is it possible to have entries sorted by type, and only then by
name? I'd like to keep directories together. (At the top,
preferably. ;)
I found the following reference (and its references) in the mailing
list archives:
http://comox.textdrive.com/pipermail/textmate/2004-December/001971.html
This message seems to imply the sorting is hard-coded.
Alexander Deruwe
Hi Allan and friends,
I have a source tree structure like this:
www/
site/
index.tcl, .adp
one.tcl, .adp
edit.tcl, .adp
item/
index.tcl, .adp
one.tcl, .adp
edit.tcl, .adp
The fact that files are named the same, but in different directories:
- Confuses both the Cmd-Opt-Up "Go to Header/Source" feature, which
will gladly find www/item/one.adp when I'm editing www/site/one.tcl. It
would be good if it would prefer the file in the current directory when
one exists. Otherwise, it's a great feature.
- Similarly, when using Cmd-T "Go to file", which I use almost
exclusively to open up new files now, it would be great if I could
write "itemonetcl" to get item/one.tcl, as opposed to site/one.tcl.
Currently, it doesn't take the path into account at all.
I can see some downsides to changing current behavior, too,
particularly with the Go to file feature.
But let me know what you think.
/Lars
As I set up Reformat Comment commands for the languages I use most
frequently (LaTeX and R), it occurred to me that maybe there's a way
to make a single call to rubywrap more generic, so that we don't need
a command per bundle. This is the result:
#!/usr/bin/env ruby
$LOAD_PATH << "#{ENV["TM_SUPPORT_PATH"]}/lib"
require "escape"
scope = ENV["TM_SCOPE"]
case scope
when /comment\.(block|line)\.number-sign\./
cstring = "# "
when /comment\.(block|line)\.percentage\./
cstring = "% "
end
flags = ""
flags += " -p \"#{cstring}\" "
flags += " --retabify" if ENV["TM_SOFT_TABS"] == "NO"
text =`echo -n "#{e_as(STDIN.read).gsub(/[$`]/, '\\\\\0')}" | ruby "#
{ENV["TM_SUPPORT_PATH"]}/bin/rubywrap.rb" #{flags}`
print e_sn(text)
The parameters are the same as the current command, with the
exception of scope, which I set to "comment.line, comment.block".
I also added a gsub to the command because it was eating latex math
and R symbols ($). There's probably a better solution to that. This
seems to work for me, and should be extended easily by adding lines
to the case statement for other languages. One advantage is that by
specifying the comment character based on the scope, it ought to work
for anything; it catches comments for both bash and perl, for
instance, without any extra effort. I think it's kind of cool.
-Alan
(forgive my noobishness, I had to re-join the list after a long period
of inattention, and cannot respond directly to the original message,
from Thomas Aylott)
> Those few of you who care, please let me know what I need to do
> before I can replace the core bundles with these guys.
I was really excited to see activity related to JavaScript in /Review,
and I immediately switched my checkouts to track the JavaScript and
Prototype bundles in Review. The irony of someone who follows the
commit log feed yet had to re-subscribe to the mailing list is
exquisite, I know.
I've been using them for the past few weeks with few (if any)
noticeable problems, using the Prototype bundle as my chosen grammar
for *.js. That is, until today, when I decided to go poking about the
latest Prototype trunk.
The file generated by `rake dist` has _never_ been small, I'll grant,
but I don't recall so much chugging and whinging by my 2.2Ghz MacBook,
or seconds-long gaps of white syntax colorless-ness when switching
tabs (a beachball will occasionally pop up for a few seconds, even).
My wild shot-in-the-dark hypothesis is that it might be related to the
increased number of `include $base` declarations in the "new" grammar.
To reiterate, this only occurs on files like the `rake dist`-generated
prototype.js, which itself is over 4,000 lines of syntactically dense,
idiomatic (and often beautiful) JS.
There seems to be a regression in the regex literal highlighting, as
it no longer works when the RegExp literal notation is used as a
member of an object with any space separating the key's colon
delimiter and the literal itself. The literals are colored fine when
it begins on the very first character of the line, or when immediately
following a parenthesis. Line 275+ of prototype/trunk/src/selector.js
is a perfect example of this regression.
I narrowed down the cause of this anomaly to the 'string.regexp.js'
key of the Embedded grammar, specifically the `begin` regexp:
(?<=[=(:]|^|return)\s*(/)(?![/*+{}?])
The lookbehind seems to be blocking it; when I remove it, the RegExp
literals in the object values highlight as intended. This does cause
any single `/` to color everything after it as a regexp, but adding an
alternate end-of-line anchor ($) to the negative lookahead seemed to
fix that. (?![/*+{}?]|$)
There is also an oddity with the folding markers, which appears to be
related to the block comment syntax. Line 135 of prototype/trunk/src/
ajax.js:
'Accept': 'text/javascript, text/html, application/xml, text/
xml, */*'
Again, inside an object literal, but this time the "*/*" seems to make
the folding parser think "I need to start a new fold here!", when in
fact it is the last member of the object, and should have no folding
marker whatsoever. Take away the second * (thus turning it into a
block comment closing delimiter), and the folding marker disappears. I
was unable to parse the gargantuan folding regexps in the grammar
clearly enough to suggest a solution.
> The Review Prototype bundle is NOT upgraded for the latest version
> of prototype.
I'd be willing to pitch in on this effort, if you (or whomever "owns"
the bundle) would like. I've done a bit of local hacking on various
bundles, and I can certainly provide examples off-list. The Prototype
grammar itself could use a little cleaning up, I'm sure.
Big thanks to all the bundle contributors for continuing to make
TextMate great! (Oh, and Allan, too :D)
~ Daniel Stockman
evocateur.org
When defining "static variables" in Preferences->Advanced->Shell
Variables, is it possible to include the values of static variables in
the values of others?
For example, I tried defining:
P1 /some/path
P2 $P1/subdir
But the value of P2 is "$P1/subdir", not "/some/path/subdir" as I wish.
--
Daryl Spitzer
Hi all,
I've just installed the Git bundle (on Tiger), and I keep getting
those error messages :
Git log =>
/tmp/temp_textmate.U9qQdq:4: command not found: git log _notes.markdown
Gits status =>
sh: line 2: git: command not found /tmp/temp_textmate.j2NZhz:4:
command not found: git ls-files -o --exclude-per-directory=.gitignore
/tmp/temp_textmate.j2NZhz:4: command not found: git ls-files -m
--exclude-per-directory=.gitignore
Note: when I run those commands in the terminal, they work fine.
Alain
I'm having problems with the standard subversion integration in
leopard. When I try to do a log command in textmate I get the
following in the popup window:
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/
1.8/rexml/source.rb:226:in `pos': Illegal seek (Errno::ESPIPE) from /
System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/
rexml/source.rb:226:in `current_line' from /System/Library/Frameworks/
Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rexml/parseexception.rb:
44:in `line' from /System/Library/Frameworks/Ruby.framework/Versions/
1.8/usr/lib/ruby/1.8/rexml/parseexception.rb:28:in `to_s' from /
Applications/TextMate.app/Contents/SharedSupport/Support/lib/escape.rb:
30:in `htmlize' from /Applications/TextMate.app/Contents/SharedSupport/
Bundles/Subversion.tmbundle/Support/svn_helper.rb:90:in
`handle_default_exceptions' from /Applications/TextMate.app/Contents/
SharedSupport/Bundles/Subversion.tmbundle/Support/format_log_xml.rb:171
REXML::ParseException
I don't have any custom bundles loaded and I haven't done anything to
the stock leopard ruby installation. Leopard was a scratch install on
this machine too, so there shouldn't be any cruft left laying around
from Tiger.
Any ideas?
Matt
Hi,
>> here comes a suggestion for all R users.
>> I wrote a tiny R daemon bundle in order to run R 'inside' of TM.
>> There is no need to start RGUI etc.
>> I found a naive way to do it and it turns out, at least for me,
>> it's quite useful. So my question is whether this approach is also
>> useful for others. If yes, I/we can elaborte this bundle.
This is a fantastically useful prospect for R users: just a vote in
favor of continuing work on this. A functional equivalent within TM to
ESS within Emacs would really break the last strong reason many Latex
+R types have for sticking with Emacs.
Kieran
I am not *writing* XML files, but I often want to understand one --
either just for education or because I need to modify it.
Often the file in question was automatically generated and "ease of
reading by humans" was not part of the process.
Right now, I trying to pull apart a XML file where a single element
contains about 90 attributes. Thankfully, they *do* seem to be
ordered alphabetically, but they are all run together in a single
line. That is, there are no linefeeds between attributes. Which
would be just what I'd like (for readability anyway -- I'm hoping
that "white space is white space and it won't matter whether those
white-spaces are space characters or line feeds).
For this file, using Find and Replace seems to work. (Find
<doublequote><space> replace with <doublequote><newline>). I don't
know enough about XML to know if it always going to be as easy as that.
The XML bundle item "Tidy" actually runs xmllint, but I don't see a
way to make that do what I want.
Searching Google on "XML pretty print" I came up with a number of
hits, but many bits of code were from the year 2000 or so.
Does anyone know of any... contemporary solutions? Or have other
suggestions/ideas?
Thanks!
eo
Hi,
Since I updated to r1455 this morning I have been unable to run tests in my
rails app. RakeMate returns the following error:
Rails requires RubyGems >= 0.9.4. Please install RubyGems and try again:
http://rubygems.rubyforge.org
I have RubyGems 1.0.1 installed and had no problems prior to the update. I
am running on Leopard, upgraded from Tiger, and I am still using my previous
MacPorts Ruby config. The application is Rails 2.0.2. Is anyone else
having this problem?
Peer
On Dec 31, 2007, at 1:04 AM, Hans-Jörg Bibiko wrote:
On 30.12.2007, at 20:13, Sergei Yakovlev wrote:
It would certainly be easier for the average user (and somewhat
more flexible) if TextMate had something like
$TM_SELECTED_TEXT_START_LINE_NUMBER and
$TM_SELECTED_TEXT_START_COLUMN_NUMBER
variables, or, alternatively, slightly changed semantics of
$TM_LINE_NUMBER and $TM_COLUMN_NUMBER variables
so that they always return the starting position of selection
(no matter how the selection was made).
Do you know these variables?
$TM_INPUT_START_LINE
$TM_INPUT_START_LINE_INDEX
Oh, I did not know these existed. Thank you, Hans! These variables
are missing from the official Manual. I decided to check for other
variables, and found that TM_COLUMNS and TM_COLUMN_NUMBER
are missing as well. Should I submit a documentation patch?
Ho-ho-ho,
Sergei Yakovlev
I've created a rather nasty hack to allow one to paste to any online
contact ASWELL as any open chat in adiumx. (current version is only
any open chat). The full source of get_destinations.scpt (found in
TextMate.tmbundle/Support/) is attached along with a screen shot.
Compile it with Script Editor.
On Dec 26, 2007, at 10:28 PM, Allan Odgaard wrote:
On 26 Dec 2007, at 14:28, Сергей Яковлев wrote:
[...]
Suggestion 1. It would be useful if TextMate had
variables like $TM_SELECTION_START and
$TM_SELECTION_END which would return the
corresponding offsets in the file (or the cursor
offset, if nothing is selected).
It does in the form of a line/column position of the start position.
Maybe I am simply misunderstanding you, but are you saying that
TextMate returns line and column position of the start position of
selection?
I'm asking because the $TM_LINE_NUMBER and
$TM_COLUMN_NUMBER variables don't quite work this way.
To illustrate what I mean, let's add a 'Show Position' command
that displays position as a tooltip:
echo "$TM_LINE_NUMBER:$TM_COLUMN_NUMBER"
and type 'TextMate' into an empty document. Now, if we select
'TextMate' with mouse from left to right, the command returns 1:9.
If we select 'TextMate' with mouse from right to left, the command
returns 1:1. Finally, if we select 'TextMate' by double-clicking
between 't' and 'M', the command returns 1:5.
So, these variables actually return the cursor position, not the
starting position of selection and it is impossible to calculate the
starting and ending positions of selection from
$TM_LINE_NUMBER and $TM_COLUMN_NUMBER variables
(without knowing how the selection was made).
The only way to do this (that is known to me) is to write a macro that
first calls a command that replaces selection with itself wrapped in
U+FFFC characters:
echo -n $'\357\277\274'$TM_SELECTED_TEXT$'\357\277\274'
and then calls another command that receives the whole document
as an input and can "find" the selection looking for U+FFFC
characters.
It would certainly be easier for the average user (and somewhat
more flexible) if TextMate had something like
$TM_SELECTED_TEXT_START_LINE_NUMBER and
$TM_SELECTED_TEXT_START_COLUMN_NUMBER
variables, or, alternatively, slightly changed semantics of
$TM_LINE_NUMBER and $TM_COLUMN_NUMBER variables
so that they always return the starting position of selection
(no matter how the selection was made).
The reason it does not use a byte offset is that internally TM would have to
"calculate" this (by adding the length of each line preceding the selection)
and I am generally wary of exporting shell variables that need to be
calculated and have an unknown running time (i.e. in practice the user could
have a million lines and each command execution would then always require a
million numbers to be added together).
I assumed that these calculations were already being performed,
after I had a look at:
$ class-dump -C OakTextView TextMate | grep selectedRange
- (struct _NSRange)selectedRange;
- (void)setMarkedText:(id)fp8 selectedRange:(struct _NSRange)fp12;
and saw 'selectedRange'. But, evidently, something much more
complicated is going on, and I certainly would not ask you questions
about TextMate internal workings :-)
The only remaining question is what symbol to use as a
mark. I decided to use √ (221A, SQUARE ROOT character,
which you can type with Option-V), but I'm not sure
this is the best choice. Maybe it's better to use some
character from Private Use Area (E000--F8FF)?
We generally use U+FFFC, OBJECT REPLACEMENT CHARACTER.
I've attached a new version of macros using U+FFFC to the original ticket.
Happy New Year!
-- Sergei Yakovlev
Hello list,
when running the following simple Ruby-Program:
require 'rubygems'
require 'active_support'
using Command+R, I get the following output:
/Library/Ruby/Gems/1.8/gems/builder-2.1.2/lib/blankslate.rb:84:in
`blank_slate_method_added': stack level too deep (SystemStackError)
from /Library/Ruby/Gems/1.8/gems/builder-2.1.2/lib/blankslate.rb:
84:in `blank_slate_method_added'
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/
builder.rb:86:in `method_added'
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/
builder.rb:111
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in `require'
from /Library/Ruby/Gems/1.8/gems/activesupport-2.0.2/lib/
active_support/core_ext/array/conversions.rb:1
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in `require'
... 8 levels...
from /Library/Ruby/Gems/1.8/gems/activesupport-2.0.2/lib/
active_support.rb:30
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:32:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:32:in `require'
from /Users/cypher/Projects/test.rb:2
/Library/Ruby/Gems/1.8/gems/builder-2.1.2/lib/blankslate.rb:84:in
`blank_slate_method_added': stack level too deep (SystemStackError)
from /Library/Ruby/Gems/1.8/gems/builder-2.1.2/lib/blankslate.rb:
84:in `blank_slate_method_added'
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/
builder.rb:86:in `method_added'
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/
builder.rb:111
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in `require'
from /Library/Ruby/Gems/1.8/gems/activesupport-2.0.2/lib/
active_support/core_ext/array/conversions.rb:1
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in `require'
... 8 levels...
from /Library/Ruby/Gems/1.8/gems/activesupport-2.0.2/lib/
active_support.rb:30
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:32:in
`gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:32:in `require'
from /Users/cypher/Projects/test.rb:2
(OS X.5, default Ruby 1.8.6p111, TextMate Build 1436)
The problem is that both the builder-gem and TextMate's builder.rb try
to alias method_added to blank_slate_method_added. I've patched TM's
builder.rb to alias to tm_blank_slate_method_added instead, which
works. However, this is only a hack to fix this problem, I'm sure
there is a better way to address this (e.g. builder.rb checking wether
a module 'Builder' already exists, and if not, load tm_builder.rb or
something like that).
regards, Markus
When typing the space key in my code in TextMate, how can I let
TextMate use a particular number of spaces instead of that tab character?
I would like to always use 2 spaces instead of the tab character.
Also, how can I auto-format code that already have tabs (or tabs replaced by, say, 4 spaces)
to format it the way I want it (say, tabs replaced by 2 spaces)? Microsoft Visual Studio allowed me to do that. Does TextMate provide such facilities? (Guess I could always turn to regular expressions to fix such stuff.)
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
Today i get new revision of TextMate. This is good! and i saw this:
[2007-12-29: REVISION 1455]
[NEW] JavaScript bundle: Add a Javascript beautifier script, with a shortcut
of Ctrl+Q. (Michael Sheets)
Cool! But... sorry pals - I can't find it!
I didnt use svn version of Javascript bundle (but ofcourse i svn up Support
and all *.tmbundles after i receive new TM revision).
I restart TM - and still nothing.
Ctrl+Q works but it do something i would call "minify me code".
Do i miss something?
Hello,
I am new to TM, and I have a couple of questions regarding the Project
Drawer. I did search google and the mailing list archives but I
didn't see an answer to my question.
When I am launching TM I would like it to open up with the Project
Drawer already present.
Also if it could open a directory (like ~/.projects) and all the sub
directories that would be great as well.
I am guessing there is a way to do this with TM since I can issue
`mate ~/.projects`
On the command line and that works. I have Quicksilver installed, so
I bet I could create a trigger that would do what I want, but I would
prefer to just have it work this way by default.
TIA
--
nathan
nathan_at_nathanpowell_dot_org
Ambition is a poor excuse for not having sense enough to be lazy.
~ Edgar Bergen
------------------------------------
Any other GTDAlt users out there?
After doing a clean install of Leopard, I'm having trouble getting the
GTDAlt bundle working again in TextMate.
Am getting Ruby errors when I add dates to actions, and iCal syncing
is using the incorrect date in iCal (one day earlier than set in my
gdt files).
It's a wonderful bundle, and I would love to keep it running smoothly.
Any clues appreciated.
Richard
I just added three bundles to Review.
JavaScript, MooTools & Prototype
The major change is that I moved all the bracketed and whitespace
scopes out of "prototype bracketed" into "javascript base".
There are now two core Javascript languages. "Javascript" and
"Javascript Basic"
When opening a Javascript file, you'll want to use "Javascript".
When you use a language like HTML, it'll automatically include
"javascript basic" as embedded source where necessary.
"Javascript basic" is mostly just a modified version of the current
Javascript language. It should be pared down a bit more still.
The MooTools bundle contains a completely new language syntax.
It also includes the classic mootools language by Joe Maller as
"MooTools 1.1"
It's pretty basic at the moment, but I have plans for upgrading it
and adding context sensitive codecompletion.
The Review Prototype bundle is NOT upgraded for the latest version of
prototype.
All it is is a compatibility upgrade to support the new javascript
core languages.
Those few of you who care, please let me know what I need to do before
I can replace the core bundles with these guys.
—Thomas Aylott – subtleGradient—
Hi,
I saw my NetNewsWire doesn't output from bundle updates RSS feeds.
See the image.
Something needs to be escaped here. Is this a bug in a script to make
feeds?
Or something is wrong in NetNewsWire?
I don't have any plan to make _malicious_file name and commit the file
to the repo :)
Takaaki
--
Takaaki Kato
http://samuraicoder.net
While the File -> Open... dialogue has a button to show hidden files,
the File -> Save seems to have no obvious way to save a file to a
hidden directory.
I was creating an environment.plist file to save in ~/.MacOSX --- my
immediate work around was to save the file to the Desktop and use
Finder to move the file to .MacOSX --- I have set Finder to show all
files using either the defaults command or TinkerTool.
A search of the mailing list indicates that Cmd-Shift-G opens a sub
dialogue box to the File -> Save dialogue that allows you to type the
name of the directory directly but that would seem hard to discover.
Is there a preference in Textmate that modifies the File -> Save
dialogue to show hidden files ?
Phil Molyneux
Dear TextMate gods, dear everybody else :)
I've been notified that my my Taskmate bundle has been added to the
review directory:
http://macromates.com/svn/Bundles/trunk/Review/Bundles/Taskmate.tmbundle
Since the first announcement to this list quite some work has been
done on this bundle. We've been able to track down some bugs, added
some new features and tweaked everything according to the great
feedback of both Michael Sheet and early adopting users.
I've put together a list of the changes in the changelog:
http://macromates.com/svn/Bundles/trunk/Review/Bundles/Taskmate.tmbundle/CH…
Even at this early stage I'd like to say thank you to Michael for
doing an amazing job as a review gatekeeper and Nigel Green, who
attentively tested every single move I made, provided lots of feedback
and additional code as well as even a complete help file.
Now we are eagerly awaiting to get bashed down by you folks for any
glitches and mistakes in order to make this bundle even better :)
Thanks!
PS: For information about what Taskmate does please refer to the
bundled help file or the project page at http://www.artweb-design.de/projects/taskmate
--
sven fuchs svenfuchs(a)artweb-design.de
artweb design http://www.artweb-design.de
grünberger 65 + 49 (0) 30 - 47 98 69 96 (phone)
d-10245 berlin + 49 (0) 171 - 35 20 38 4 (mobile)
Greetings all. Been using TextMate for quite some time, but never had
a problem before now. Allan Odgaard suggested I post this to the list.
I installed Ruby 1.9 this morning by doing a source install from the
release tarball. I had to manually update the readline library and I
also had to change my path so that /usr/local/lib is read before /usr/
lib because of the libreadline.dylib that is contained there.
I can run Ruby 1.9 programs from the command line just fine, but if I
try to use command-R to run them from inside TextMate, I get:
------------------ BEGIN ERROR MESSAGE -----------------
/Applications/TextMate.app/Contents/SharedSupport/Support/lib/
scriptmate.rb:4:in `require': /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/io.rb:40: syntax error, unexpected ':',
expecting keyword_then or ',' or ';' or '\n' (SyntaxError) when 1:
lines.each { |line| block.call(line) } ^ /Applications/TextMate.app/
Contents/SharedSupport/Support/lib/io.rb:41: syntax error, unexpected
keyword_when, expecting keyword_end when 2: lines.each { |line|
block.call(line, name) } ^ /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/io.rb:47: syntax error, unexpected
keyword_elsif, expecting keyword_end elsif sync? ^ /Applications/
TextMate.app/Contents/SharedSupport/Support/lib/io.rb:49: syntax
error, unexpected ':', expecting keyword_then or ',' or ';' or '\n'
when 1: block.call(data) ^ /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/io.rb:50: syntax error, unexpected
keyword_when, expecting keyword_end when 2: block.call(data, name) ^ /
Applications/TextMate.app/Contents/SharedSupport/Support/lib/io.rb:
60: syntax error, unexpected ':', expecting keyword_then or ',' or
';' or '\n' when 1: leftovers.each_pair { |name,... ^ /Applications/
TextMate.app/Contents/SharedSupport/Support/lib/io.rb:61: syntax
error, unexpected keyword_when, expecting keyword_end when 2:
leftovers.each_pair { |na... ^ /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/io.rb:67: syntax error, unexpected
keyword_end, expecting $end from /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/scriptmate.rb:4:in `' from /Applications/
TextMate.app/Contents/SharedSupport/Bundles/Ruby.tmbundle/Support/
RubyMate/run_script.rb:1:in `require' from /Applications/TextMate.app/
Contents/SharedSupport/Bundles/Ruby.tmbundle/Support/RubyMate/
run_script.rb:1:in `'
------------------ END ERROR MESSAGE -----------------
I also get errors running a shell script, but not quite the same, and
it does then proceed to run the script after dumping the error
message, unlike with the Ruby script:
------------------ BEGIN ERROR MESSAGE -----------------
(erb):29:in `concat': character encodings differ (ArgumentError) from
(erb):29:in `html_head' from /usr/local/lib/ruby/1.9.0/erb.rb:743:in
`eval' from /usr/local/lib/ruby/1.9.0/erb.rb:743:in `result' from /
Applications/TextMate.app/Contents/SharedSupport/Support/lib/
web_preview.rb:116:in `html_head' from -:4:in `'
Hello World
Program exited with status 0.
------------------ END ERROR MESSAGE -----------------
As I said, I'm still able to run Ruby code from the command line, but
it's obviously less convenient, so I was hoping somebody might have
an idea what's going on. I'm still running Tiger and am on the latest
version of TextMate (Version 1.5.7 (1436)). Any thoughts, information
would be greatly appreciated.
Thanks,
Jeff LaMarche
Maybe I'm doing something wrong but I don't seem to be able to fold PHP
docblocks when they are like
/**
*
*/
even though the top fold arrow is shown (but the bottom isn't) only when
they are
/**
*
*/
however the code completion features such as doc<tab> and /**<tab> generate
the first block
Does anyone know how to fix it so that the first type of docblock folds
correctly?
Thanks
--
View this message in context: http://www.nabble.com/PHP-docblock-folding-tp14475232p14475232.html
Sent from the textmate users mailing list archive at Nabble.com.
[REPOSTING BECAUSE OF BAD FORMATTING]
Hi!
A well-known problem with Move Selection Line Up/Down
commands (Control-Command-Up/Down) is that if you use
them without selection (which means "move current
line"), the cursor ends up in the wrong place. This
has been bugging me and my friends for quite some
time, so I wrote a fix. It's two macros overriding
default key equivalents, which you can find attached
to the bug description at
http://macromates.com/ticket/show?ticket_id=58C52785 .
Please tell if this works for you.
Also, is it possible to put this fix into some
standard TextMate bundle like Text.tmbundle, so that
all TextMate users enjoy it? (Until it is fixed in the
new engine of TextMate 2.) What is the best way to do
it?
This is my first experience in TextMate programming,
and several times I've been stuck in various
dead-ends. What follows is a somewhat long description
of how I approached the problem along with some
suggestions on making TextMate easier to program. Most
people would like to skip this.
So, my first (rather silly) attempt was a huge Ruby
program which replicated functionality of Move
Selection Line Up/Down and depended on my assumption
that the cursor is always at the end of selection
(potentially allowing me to calculate all the
necessary offsets in the file). Well, it turned out
that my assumption was simply not true, as the cursor
can be anywhere inside the selection, depending on how
you've selected the text.
Suggestion 1. It would be useful if TextMate had
variables like $TM_SELECTION_START and
$TM_SELECTION_END which would return the
corresponding offsets in the file (or the cursor
offset, if nothing is selected).
On a second attempt, I decided that I should instead
go with the built-in commands, simply correcting the
cursor position for the special case when nothing is
selected. So we remember current cursor position, call
Move Selection Line Up/Down, and move the cursor back
to remembered position if nothing is selected. There
are two problems here. First, you can only call
built-in commands from macros, and it is not possible
to remember values through the steps of a macro.
Second, there is no direct way to reposition the
cursor. One indirect way to achieve this is to insert
a snippet with a $0 variable. However, to move the
cursor to arbitrary position in this fashion, we need
an output option like "Replace Document as Snippet",
which is not available. Because of these two problems,
I decided to use TMTOOLS plugin, which has "call
macro" (for calling arbitrary macros and built-in
commands from commands) and "set caretTo" (for setting
the cursor position). I got a working solution, but it
had a delay of 0.5 to 1 s, which was too slow to be
useful.
Suggestion 2. Add a way to set "global"
environment variables programmatically (from
commands). These "global" variables should be
available to all subsequently called commands (and
other bundle items) until explicitly unset.
Suggestion 3. Replace output options "Insert as
Text" and "Insert as Snippet" with just one
option, "Insert", and add a checkbox "as Snippet"
to the right. This would add such useful options
as "Replace Selected Text as Snippet", "Replace
Document as Snippet" and "Create New Document as
Snippet" without making the list of options too
long.
So, on a third (and final) attempt, I dropped TMTOOLS
and returned to the idea of a macro. Inspired by Duane
Johnson's solution for multiple insertion points, I
decided to use a special symbol (mark) to "remember"
the initial position of the cursor. So we insert the
mark at the cursor (if nothing is selected), call Move
Selection Line Up/Down, and replace the mark with
empty string (if nothing is selected), which moves the
cursor there as a side-effect. The problem here is
that Replace command always replaces current selection
with replace buffer, even if it doesn't match the find
buffer, which ruins the case when something has
already been selected in the beginning. Replace All
also ruins current selection, moving the cursor to the
beginning of the file even if it has not found any
matches. Fortunately, the Find Next/Previous command
will only change current selection if the match has
been found. So that's what we use. If there is a mark
in the text, it will get selected, otherwise, the
selection won't change. Finally, the selection is
replaced with an empty string if what's selected is a
mark. The wrong cursor position after Move Selection
Line Up/Down is always further in text than the right
position (actually, it's on the next line), so we use
Find Previous command to perform the search. Because
of this little detail, the solution is actually pretty
fast.
Suggestion 4. Replace All should not alter current
selection if no matches are found.
The only remaining question is what symbol to use as a
mark. I decided to use √ (221A, SQUARE ROOT character,
which you can type with Option-V), but I'm not sure
this is the best choice. Maybe it's better to use some
character from Private Use Area (E000--F8FF)?
Best regards,
Sergei Yakovlev
Hi all,
I am pretty new to textmate and would like to know if it's possible to
change the color of PHPdoc comments from normal comments. I've noticed
since using a lot of PHPDoc stuff in my code that it looks more confusing
than ever. Being able to change the color would help in making things more
readable.
I noticed there was a thread in 2006 that discussed this but it did not help
me. Also, I tried setting the scope of "comment.documentation" in hopes
that it my be the correct scope with no luck (it doesn't seem to match the
scope or something because nothing changes even after restarting textmate).
Any help would really be appreciated.
Thanks,
Clark Endrizzi
I apologize for being off-topic, but I think there's more expertise on
this list than I'll find elsewhere.
I'm thinking about moving my blog from Movable Type 3.2 to WordPress.
As a test, I've set up a local WP installation and imported my old
posts--all of which are written in Markdown. They look awful,
primarily because the blocks of source code in many of my posts are
not being imported properly. Here is what I've done:
1. Exported the MT 3.2 posts using MT's builtin export command.
2. Installed WP and the PHP-MarkdownExtra plugin. Activated the plugin.
3. Imported into WP the text file that came out of the MT export process.
The biggest problem seems to be that WP isn't recognizing the Markdown
formatting of the exported posts. What should be enclosed by
<pre><code>...</code></pre> are enclosed by simple paragraph tags
instead.
Has anyone here experienced and solved this problem?
--
Dr. Drang
Hi!
In XML bundle, the block doesn't fold properly
if the closing tag is not on a separate line.
Example:
<?xml version="1.0" encoding="UTF-8"?>
<document>
<page>This tag block doesn't fold properly.
It folds as if '/document' tag closes it.
The closing tag is on the same line.</page>
<page>This tag block folds properly.
The closing tag is on a separate line.
</page>
</document>
Cheers,
Sergei Yakovlev
Hi!
A well-known problem with Move Selection Line Up/Down commands
(Control-Command-Up/Down) is
that if you use them without selection (which means "move current
line"), the cursor ends
up in the wrong place. This has been bugging me and my friends for
quite some time, so I
wrote a fix. It's two macros overriding default key equivalents,
which you can find
attached to the bug description at http://macromates.com/ticket/show?
ticket_id=58C52785 .
Please tell if this works for you.
Also, is it possible to put this fix into some standard TextMate
bundle like Text.tmbundle,
so that all TextMate users enjoy it? (Until it is fixed in the new
engine of TextMate 2.)
What is the best way to do it?
This is my first experience in TextMate programming, and several
times I've been stuck in
various dead-ends. What follows is a somewhat long description of how
I approached the
problem along with some suggestions on making TextMate easier to
program. Most people would
like to skip this.
So, my first (rather silly) attempt was a huge Ruby program which
replicated functionality
of Move Selection Line Up/Down and depended on my assumption that the
cursor is always at
the end of selection (potentially allowing me to calculate all the
necessary offsets in the
file). Well, it turned out that my assumption was simply not true, as
the cursor can be
anywhere inside the selection, depending on how you've selected the
text.
Suggestion 1. It would be useful if TextMate had variables like
$TM_SELECTION_START and
$TM_SELECTION_END which would return the corresponding offsets in
the file (or the
cursor offset, if nothing is selected).
On a second attempt, I decided that I should instead go with the
built-in commands, simply
correcting the cursor position for the special case when nothing is
selected. So we
remember current cursor position, call Move Selection Line Up/Down,
and move the cursor
back to remembered position if nothing is selected. There are two
problems here. First, you
can only call built-in commands from macros, and it is not possible
to remember values
through the steps of a macro. Second, there is no direct way to
reposition the cursor. One
indirect way to achieve this is to insert a snippet with a $0
variable. However, to move
the cursor to arbitrary position in this fashion, we need an output
option like "Replace
Document as Snippet", which is not available. Because of these two
problems, I decided to
use TMTOOLS plugin, which has "call macro" (for calling arbitrary
macros and built-in
commands from commands) and "set caretTo" (for setting the cursor
position). I got a
working solution, but it had a delay of 0.5 to 1 s, which was too
slow to be useful.
Suggestion 2. Add a way to set "global" environment variables
programmatically (from
commands). These "global" variables should be available to all
subsequently called
commands (and other bundle items) until explicitly unset.
Suggestion 3. Replace output options "Insert as Text" and
"Insert as Snippet" with just
one option, "Insert", and add a checkbox "as Snippet" to the
right. This would add such
useful options as "Replace Selected Text as Snippet", "Replace
Document as Snippet" and
"Create New Document as Snippet" without making the list of
options too long.
So, on a third (and final) attempt, I dropped TMTOOLS and returned to
the idea of a macro.
Inspired by Duane Johnson's solution for multiple insertion points, I
decided to use a
special symbol (mark) to "remember" the initial position of the
cursor. So we insert the
mark at the cursor (if nothing is selected), call Move Selection Line
Up/Down, and replace
the mark with empty string (if nothing is selected), which moves the
cursor there as a
side-effect. The problem here is that Replace command always replaces
current selection
with replace buffer, even if it doesn't match the find buffer, which
ruins the case when
something has already been selected in the beginning. Replace All
also ruins current
selection, moving the cursor to the beginning of the file even if it
has not found any
matches. Fortunately, the Find Next/Previous command will only change
current selection if
the match has been found. So that's what we use. If there is a mark
in the text, it will
get selected, otherwise, the selection won't change. Finally, the
selection is replaced
with an empty string if what's selected is a mark. The wrong cursor
position after Move
Selection Line Up/Down is always further in text than the right
position (actually, it's on
the next line), so we use Find Previous command to perform the
search. Because of this
little detail, the solution is actually pretty fast.
Suggestion 4. Replace All should not alter current selection if
no matches are found.
The only remaining question is what symbol to use as a mark. I
decided to use √ (221A,
SQUARE ROOT character, which you can type with Option-V), but I'm not
sure this is the best
choice. Maybe it's better to use some character from Private Use Area
(E000--F8FF)?
Best regards,
Sergei Yakovlev
This is a strange one. The other day my Subversion commits have
suddenly stopped working in terms of uploading to the repository.
I ctrl-shift-A, use the commit and get the window for commiting the
files I've highlighted and the -m message window. Enter a message...
All good.
When I hit Commit however, I get the Subversion Commit -
"Transmitting File data" window and the barber pole but the window
never comes back with either a dialogue box for the password for the
user or anything at all. I end up having to quite Textmate in order
to kill it and then doing a command line svn cleanup on the files
that I was trying to upload.
Handling svn through the command line with svn ci file.rhtml -m "blah
de blah" works fine however.
Does anyone have any idea of what may be causing this and how to
correct it ? I've gotten so used to the svn budle it's really
cramping my style now...
thanks !
Daryl.
PS> OSX 10.4.11, Textmate Version 1.5.7 (1436), svn, version 1.4.5
(r25188)
Hi,
I've been trying to make a TM command to convert text encodings (with
a nice little tm_dialog that took a while to figure out but now works
very well).
But for some reason, it won't read the file correctly using stdin.
So that this works:
iconv -f $ENC -t UTF8 "$TM_FILEPATH"
But this does not (nor do other variations on the theme using stdin):
iconv -f $ENC -t UTF8 < /dev/stdin
TM seems to do something to the text to change its encoding, so that
iconv cannot convert properly.
Even stranger than that, some encodings trigger this error:
/usr/bin/iconv: conversion from "SHIFT_JISX0213" unsupported
/usr/bin/iconv: try '/usr/bin/iconv -l' to get the list of supported
encodings
Does anyone have an idea about what's going on here?
Thanks,
Alex
I'm wondering if the contents of my "/Library/Application
Support/Textmate" directory is correct after checkout from svn.
Should it be this:
Bundles/
Support/
or this:
Bundles/
Conventions.txt
Disabled Bundles/
LICENSE
Manual/
PlugIns/
README
Review/
Support/
Themes/
Tools/
Work in Progress/
Perhaps I invoked a checkout on the wrong directory?
Ultimately I am trying to see all the Bundles in the Bundle directory.
I'm unable to find ODCompletion items even though I see them in the
file system.
Thank you!
az
When working with a Latex project, is there a way to specify the
bibliography file that should be used by the relevant commands?
I'm sorry is this question has an obvious answer, but I can't seem to find
it...
Best wishes,
NPC
I updated the MultiMarkdown TextMate bundle today. This update fixes
a problem that Leopard users were having --- or at least I think it
does. It still works for me in Tiger, and I hear reports that this
fixes the problem Leopard users were having. Specifically, they were
getting an error message like:
/bin/bash: line 2: cd: ~/Library/Application\ Support/MultiMarkdown:
No such file or directory
/bin/bash: line 3: cd: bin: No such file or directory
/bin/bash: line 5: ./multimarkdown2XHTML.pl: No such file or directory
This was caused by an apparent change in the way the shell works
under Leopard. Please let me know if you continue to have trouble
with this, and thanks to everyone who helped track down this bug.
Download the new version from:
* <http://files.fletcherpenney.net/MultiMarkdownForTextMate.zip>
--
Fletcher T. Penney
fletcher(a)fletcherpenney.net
If you start out depressed, everything's kind of a pleasant surprise.
- Lloyd (John Cusack) in Say Anything
Hi,
While watching the 2nd obj-C screencast, I noticed Allan was getting a
tab-completion on the word NSArray. Is it possible that particular
tab-completion was removed from Textmate since the screencast was
created? Or might I not have all the obj-C bundles?
FTR... I get a rewrite/insertion of this:
NSMutableArray *array = [NSMutableArray array];
when I do a tab completion on the word:
array
Perhaps creating such a tab-completion is so simple I can create my own?
Do some bundles exist which are not distributed via the textmate svn repository?
Thanks...
az
Allan Odgaard wrote:
> On 20 Dec 2007, at 20:47, Alan Curtis wrote:
>
> > cd "${TM_MULTIMARKDOWN_PATH:-~/Library/Application Support/
> > MultiMarkdown}"
>
> I think this (default path) lack “.tmbundle” and it _really_ should be
> using TM_SUPPORT_PATH instead of a hardcoded (default) path, which
> additionally means it should store multimarkdown2XHTML.pl under
> Support/bin (in the bundle).
No - MultiMarkdown belongs in Application Support - not in the
textmate bundle. If it's in the bundle, then it's not accessible to
other programs that use MultiMarkdown.
The problem here appears to be that Leopard changes the way the shell
and the TextMate variables work. I have not upgraded to Leopard yet,
and welcome suggestions on how to fix the problem that Leopard users
are having.
F-
--
Fletcher T. Penney
fletcher(a)fletcherpenney.net
If you start out depressed, everything's kind of a pleasant surprise.
- Lloyd (John Cusack) in Say Anything
Hello,
I notice the objective-C snippet called "method" (invoked with
control-shift-m) is producing 3 spaces as indent before the "return
nil;" statement. I check the snippet in the bundle editor and see it
is indeed a tab in the code. What might be causing the output of the
snippet to become three spaces in the objective c file? My soft tabs
are set for 4 spaces. Thank you for any advice.
Cheers,
-az
snippet code pasted here for convenience:
- (${1:id})${2:${TM_SELECTED_TEXT:method}}${3::(${4:id})${5:${4/(NS([AEIOQUY])?(\w+).*)|(.)?.*/(?1:a(?2:n$2)$3:(?4:anArgument))/}}}
{$0${1/^(void|IBAction)$|(.*)/(?2:
return nil;)/}
}
Hi,
"Tail Access Log" and "Tail Error Log" in Apache Bundle currently try
to check
* /var/log/httpd/access_log
* /var/log/httpd/error_log
This worked on Tiger, I think.
In Leopard, the files are by default located at
* /var/log/apache2/access_log
* /var/log/apache2/error_log
Is there any plan to add a setting/preferences GUI for this bundle?
Different people have different log locations.
Takaaki
--
Takaaki Kato
http://samuraicoder.net
Hi,
after fixing to run R inside of TM as interactive shell I tried to
run irb and it also works. But one 'only' has to change the
communication between irb and TM slightly. Is someone interested to
do that? ;)
--Hans
Hi,
> Sorry my bad, I've been a bit rusty. TM_LATEX_BIB is supposed to
> point to an actual bib file, not the directory. What you want is to
> set the BIBINPUTS variable in TM to the directory path as well, like
> you set it in bash_profile. (hopefully ;) ). I'm kind of surprised
> this wasn't a problem earlier, if you had set TM_LATEX_BIB to that
> directory. Let's hope this would fix it,
I didn't have TM_LATEX_BIB set originally --- I put that in during my
efforts to solve the problem. Now I've removed it again. BIBINPUTS was
not set in TextMate. I set it and it returns '/Users/kjhealy/Library/
texmf/bibtex/bib:' from within TM. (This is the correct path.) But my
problem persists. On the MacBook Pro, when I use the keyboard shortcut
the menu pops up asking to create a label or a citation, and when I
then select citation, nothing happens except the pointer changes to a
cross. Same goes for the option when selected through the bundle menu.
On the G5 desktop (which I currently don't have access to) the same
thing was happening except I was getting the "Can't find any files
named 'bibname'" tooltip.
Kieran
In the MacBreak video podcast (#96) for 12/12/2007, Leo features his
fav text editors & overwhelming votes for textmate while giving an
idea of its capabilities as well as history.........
As someone that did his entire PhD (writing - in latex, running R,
Sweave, stata etc..) all within textmate I would be remiss not to
thank all those that are continuously developing textmate & the
supporting bundles - Alan, Charilaos, Hadley, Brett, Kevin, Allan
Schussman, just to mention but a few of many people whose bundles
have been helpful....
I am now getting into experimenting with new experimental bundles
- eg Hans R daemon which seem as if they will be making me even more
productive during 2008..
Thanks to y'all that are behind textmate & all its associated
bundles.... & best during 2008!
danstan
Are there any bundles available to ease writing JSDoc comments for javascript?
Aptana has a really nice feature that looks for /** and completes the
rest of the comment for you, leaving you to just fill in the
descriptions of the function and it's parameters.
> From: Alex Ross <alex.j.ross(a)gmail.com>
> Date: December 19, 2007 8:08:51 PM EST
> To: TextMate users <textmate(a)lists.macromates.com>
> Subject: Re: [TxMt] Python Import
> Reply-To: TextMate users <textmate(a)lists.macromates.com>
>
> Tony,
>
> Have you made any modifications to your PYTHONPATH?
Hey Alex,
Thanks for your quick reply. I have added a couple of folders to the
PYTHONPATH in my `.profile` configuration file in my home directory.
PYTHONPATH=/Users/Tony/python:/Users/Tony/python/nodebox/src
It turns out that if I comment out the nodebox source path from the
above statement, `import objc` works fine. Unfortunately, the reason I
wanted to import the objc module was because nodebox requires it (and
requires the source tree be on the PYTHONPATH). Does any one know why
things would work fine from a Terminal, but not Textmate.
BTW, sys.path gives the same output in Textmate and the Terminal
window, except that Textmate appends the Textmate path and the
Desktop, while Terminal appends the present working directory.
Thanks,
-Tony
I learned a few days ago (see http://xrl.us/bcuzs) that a drag
command with a file type of "vcf" will work on cards dragged out of
the Address Book as well as vcf files dragged from the Finder. (A
temporary vcf file is made as you drag the card.) I thought it would
be nice to have a formatted name and address appear in the TM window
instead of the default vCard-formatted info. I had an AppleScript I'd
written a while ago that I adapted for this purpose and called it
from the drag command using 'osascript'.
The drag command works, but it takes 20-30 seconds to run when
operating on a card dragged from the Address Book. This isn't because
the AppleScript itself is slow--it runs almost instantly when
operating on a vCard file dragged from the Finder.
In the interests of space, here's a simpler AppleScript that exhibits
the same difference in runtime:
on run argv
tell application "Address Book"
set theCard to (person id (item 1 of argv))
set out to name of theCard
end tell
return out
end run
I've called it "abname.scpt" and saved it in my ~/bin directory.
(I've also saved it as an application and as text. The results are
the same.)
Here's the drag command:
if [[ $TM_MODIFIER_FLAGS = "OPTION" ]]; then
uid=`cat "$TM_DROPPED_FILE" |\
awk -F: '/^X\-ABUID/\
{printf "%s:ABPerson", substr($2,1,length($2)-1)}'`
osascript $HOME/bin/abname.scpt "$uid"
else
cat "$TM_DROPPED_FILE"
fi
This is set up so that when I hold the Option key down as I drag, the
name of the card is inserted in the TM window. If I *don't* hold the
Option key down, the usual vCard data is inserted. The behavior on my
main computer--an Intel iMac running OS X 10.4.11 with TM 1.5.7
(1436)--is like this:
Dragging from Option key Time to run
----------------------------------------------------
file in Finder not pressed instant
file in Finder pressed instant
card from AB not pressed instant
card from AB pressed 20+ seconds
I'd like to know why there's such a difference and what I can do, if
anything, to speed things up.
--
Dr. Drang
Hi Haris,
thanks for the quick reply.
> > Doing kpsewhich -show-path=bib returns
> >
> >> /Users/kjhealy/Documents/bibs:.:/Users/kjhealy/Library/texmf/
> >> [etc]
> >
>
> Is this what is also returned if your type in TM: kpsewhich -show-
> path=bib
> followed by pressing ctrl-R?
Yes.
> So what you would want to do is set TM_LATEX_BIB in TextMate's
> preferences as well (TextMate -> Preferences -> Advanced -> Shell
> Variables.
Yes, this is set too, as the full path, /Users/kjhealy/Documents/bibs.
The problem is now a little weirder. I have this issue on two Leopard
machines. One is a G5 desktop and one is a recent Macbook Pro.
I thought the problem might have to do with the symlinks I was using
to point to ~/Documents/bibs. So I deleted the symlinks and moved all
the bib files to ~/Library/texmf/bibtex/bib. So there's no ~/Documents/
bibs anymore, and no symlinks to it. I changed TM_LATEX_BIB in
TextMate to reflect this (and changed BIBINPUTS in bash_profile, too).
Now kpsewhich -show-path=bib inside TM gives
kpsewhich -show-path=bib/Users/kjhealy/Library/texmf/bibtex/bib:.:/
Users/kjhealy/Library/texmf/bibtex/bib//:!!/usr/local/gwTeX/
texmf.local/bibtex/bib//:!!/usr/local/gwTeX/texmf.pkgs/bibtex/bib//:!!/
usr/local/gwTeX/texmf.gwtex/bibtex/bib//:!!/usr/local/gwTeX/
texmf.texlive/bibtex/bib//:!!/usr/local/gwTeX/texmf/bibtex/bib//:/
Users/kjhealy/Library/texmf/bibtex///:!!/usr/local/gwTeX/texmf.local/
bibtex///:!!/usr/local/gwTeX/texmf.pkgs/bibtex///:!!/usr/local/gwTeX/
texmf.gwtex/bibtex///:!!/usr/local/gwTeX/texmf.texlive/bibtex///:!!/
usr/local/gwTeX/texmf/bibtex///
Again, latex/bibtex compile fine. via latexmk. Now when I try to
complete a citation from a word, I get the following error:
/Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:114:in `read': Is a directory
- /Users/kjhealy/Library/texmf/bibtex/bib (Errno::EISDIR)
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:114:in `parse_bibfile'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:252:in `cite_scan'
from /Users/kjhealy/Library/Application Support/TextMate/ Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:248:in `each'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:248:in `cite_scan'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:216:in `call'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:216:in `recursive_scan'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:215:in `each'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:215:in `recursive_scan'
... 7 levels...
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:204:in `recursive_scan'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:255:in `cite_scan'
from /Users/kjhealy/Library/Application Support/TextMate/Bundles/
Latex.tmbundle/Support/lib/LaTeXUtils.rb:63:in `get_citations'
from /tmp/temp_textmate.fLdPNM:8
I get this error with different documents and different bibfiles. If I
uncheck the TM_LATEX_BIB variable in TM preferences and try to cite
something, the cursor changes to a cross and nothing else happens.
Kieran
I'm not going to call this solved, but I at least have a working
solution -- and analysis (follows). Here's my weak (very weak) unix-fu
understanding of the problem. The Preview function of the MMD bundle
has three simple lines:
> cd "${TM_MULTIMARKDOWN_PATH:-~/Library/Application Support/
MultiMarkdown}"
> cd bin
> ./multimarkdown2XHTML.pl
After upgrading to Leopard, I was getting the following error report:
> /bin/bash: line 2: cd: ~/Library/Application Support/MultiMarkdown:
No such file or directory
> /bin/bash: line 3: cd: bin: No such file or directory
> /bin/bash: line 4: ./multimarkdown2XHTML.pl: No such file or
directory
Because my unix-fu is so very, very (very) weak, it took me the
longest time to realize that the Bash shell wasn't seeing the
directory. I tested it by running
> cd "~/Library/Application Support/MultiMarkdown"
No such file or directory
I tried changing it to the more usual:
cd ~/Library/Application\ Support/MultiMarkdown
Presto! It worked. I changed the first line in the MMD Preview to the
above and Preview now works like it used to.
Now you can all stop chuckling at how slow I am, but my question is:
has anyone else encountered this problem? Surely I'm not the only MMD
adherent who has upgraded to Leopard? (I'm hoping the problem wasn't
me being goofy, but it could be.)
Any corrections to my analysis are welcome and will be regarded as
contributing to my education.
Please, no rulers on the knuckles. It's the holidays and all.
john