Hello,
when I am in a situation where I have identically named files in different directories open in TextMate, then the displayed path in the title bar doesn’t update to reflect the currently selected tab. Is this intended?
For example
> mkdir t
> cd t
> mkdir foo bar
> echo foo > foo/baz.txt
> echo bar > bar/baz.txt
> mate */baz.txt
leads to a situation where it is impossible to see whether I’m currently editing baz.txt in foo or bar, see http://www.maven.de/pics/tm2_path_bar.png vs http://www.maven.de/pics/tm2_path_foo.png .
I would have expected the title bar to reflect my currently active tab.
Thanks,
Daniel.
Is it possible with snippets to make a first option selection determine the choices displayed for a subsequent option?
An example would be with choosing version numbers, choose a major version number, then constraining minor version number based on the major version number selected.
So ${1|2,3,4|}.${2|<list here should be dependent upon first selection|}
Thanks,
John Joyce
I'm assuming somebody else has noticed.
But calling it out anyway.
Saving via command s no longer works in the bundle editor window.
Saving does work via the File menu.
When I've got a lot of tabs open, I sometimes want to go from the file whose contents I'm editing to the listing of that file in the file browser. Didn't there used to be a way to do this? I can't find it. What I want is that the outline in the file browser should open the triangles as necessary to reveal the file listing and select it and scroll to it.
Xcode does this with Navigate > Reveal in Project Navigator.
If TM doesn't do this, could this be a feature request? If it already does, could you remind me how?
Thx - m.
--
matt neuburg, phd = http://www.apeth.net/matt/
pantes anthropoi tou eidenai oregontai phusei
Programming iOS 9! http://shop.oreilly.com/product/0636920044352.do
iOS 9 Fundamentals! http://shop.oreilly.com/product/0636920044345.do
RubyFrontier! http://www.apeth.com/RubyFrontierDocs/default.html
I have two displays. If I have two TextMate projects open, one in each
display. When opening a file from the Terminal using the "mate" command
in the project located in the secondary display TextMate will correctly
open that file but set the focus on the project in the first display.
I'm not sure if this is a problem with TextMate or the OS X window
management but it can be quite annoying.
--
/Jacob Carlborg
I am working in a Rails project, and one of the files in the project tree is a catalog of books, exported from another system as a 1MB single-line file. When I engage multi-file search, I will end up in spinning-pizza-of-death until I force-quit the app. As a work-around, I have had to keep search from looking inside it by declaring it to be one of the non-text files (right after jpeg) in the preferences in order to be able to search for anything at all across files.
Is there a better way that I can handle this? It's non-ideal to never be able to look in a JSON file within TM. I can use BBEdit, which does not have any issue at all opening this file, but I'd like to keep it all together.
How else could I globally keep multi-file search from trying to read this file?
Thanks,
Walter
The new feature: mate --project $(uuidgen|tr -C $'\n-' 0) file.txt
is broken as it echoes:
$ mate --project 00000000-0000-0000-0000-0000000000000 xcrash.C
uuid_t: error parsing ‘00000000-0000-0000-0000-0000000000000’
and does not open in a new window. Also the alternative:
$ TM_PROJECT_UUID=00000000-0000-0000-0000-000000000000 mate xcrash.C
uuid_t: error parsing ‘00000000-0000-0000-0000-0000000000000’
does not work anymore.
In addition the —-project option is not documented in mate --help, where it still
is documented as —uuid.
Please fix as my workflow pretty much depends on it.
Cheers, Fons.
--------------------------------------------------------------------------
Dr. Fons Rademakers CERN - European Organization for Nuclear Research
Chief Research Officer 1211 Geneve 23, Switzerland
CERN openlab Tel: +41227679248 Mobile: +41754113742
--------------------------------------------------------------------------
Thanks. The recommendations worked. Adding L:(…) around all the injections selector does the trick. I don’t know why it didn’t work for me then, but probably because of the second problem. Simplifying the other selectors and not trying to follow the ERB syntax makes everything a little bit easier to understand (and correctly syntax highlight both languages in the same file).
Thanks a lot for the help!
El lunes, 30 de mayo de 2016 a las 14:36, textmate-request(a)lists.macromates.com (mailto:textmate-request@lists.macromates.com) escribió:
> On 16 May 2016, at 17:29, Daniel Rodr?guez Troiti?o wrote:
>
> > A simple version of my grammar looks like this:
> > [?]
> > 'source.swift.gyb - (meta.embedded.block.gyb)' = {
> The injection scope selector should use L:(?) so your injected rules
> go before Swift?s (as you also write yourself).
>
> > { begin = '(^|\s*)(?=%\{(?![^\}]*\}%))';
> This seems to be the problem, this rule doesn?t actually match
> anything as it?s a ?begin of line? assertion and then a ?look
> ahead? assertion.
>
> So while the rule ?matches? when you have `%{` at the beginning of a
> line, no characters are consumed, so we descend into the rule?s
> patterns, but here we also have the Swift rules, and the L:(?) only
> affects the priority of the root rules injected (not their children), so
> the Swift rule will consume the `%` character because it was not
> consumed by the parent rule?s begin pattern.
>
> A minimal version of your grammar that works would be this:
>
> { injections = {
> 'L:(source.swift.gyb - meta.embedded.block.gyb)' = {
> patterns = (
> { name = 'meta.embedded.block.gyb';
> begin = '%\{';
> end = '\}%';
> contentName = 'source.python';
> patterns = ( { include = 'source.python'; } );
> },
> );
> };
> };
> patterns = ( { include = 'source.swift'; } );
> }
>
> I understand you wanted to scope the leading/trailing whitespace and
> then re-use the actual matching of %{ and %}, but I don?t think this
> is possible, though I think it will be simpler to add optional matches
> like this:
>
> begin = '(^\s*)?%\{';
> end = '\}%(\s*$)?';
>
> Then name these captures for
> `punctuation.whitespace.embedded.[leading|trailing].gyb`.
I tried to open a folder in TextMate today (one I open often) and it
crashed. (It was already running, as always.) Ever since, I’ve been
unable to get it to launch.
It detects the crash and asks about restoring open documents. It crashes
no matter what I choose there.
I haven’t changed any preferences or bundles or installed any updates
today.
I’ve tried:
* `defaults delete com.macromates.TextMate.preview.LSSharedFileList`
* `defaults delete com.macromates.TextMate.preview`
* `mv ~/.tm_properties ~/foo`
* trashed `~/Library/Saved Application
State/com.macromates.TextMate.preview.savedState`
* trashed `~/Library/Caches/com.macromates.TextMate.preview`
* restored `~/Library/Applicaiton Support/Avian` and `TextMate` from
a backup taken this morning
* downloaded the app again from the web site
* tried an older version (beta 7.3)
* rebooting, like a poor beleaguered Windows user
The only thing that *did* work was launching it as a different user, so
it’s something with my account, but what’s left?
I haven’t tried deleting all my bundles, but from the dates, I don’t
think any have changed since March.
From the crash log:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_platform.dylib 0x00007fff94e40331
_platform_memmove$VARIANT$Ivybridge + 49
1 com.macromates.TextMate.OakTextView 0x000000010f92dfe1
oak::callbacks_t<ng::callback_t, false>::remove(ng::callback_t*) + 105
2 com.macromates.TextMate.OakTextView 0x000000010f8feeea
-[OakTextView setDocument:] + 437
3 com.macromates.TextMate.OakTextView 0x000000010f8f0584
-[OakDocumentView setDocument:] + 643
4 com.macromates.TextMate.OakTextView 0x000000010f8f01f4
-[OakDocumentView dealloc] + 457
5 libobjc.A.dylib 0x00007fff9676389c
objc_object::sidetable_release(bool) + 236
6 libobjc.A.dylib 0x00007fff96749e8f (anonymous
namespace)::AutoreleasePoolPage::pop(void*) + 575
7 com.apple.CoreFoundation 0x00007fff93a6b6f2
_CFAutoreleasePoolPop + 50
8 com.apple.Foundation 0x00007fff89f13762
-[NSAutoreleasePool drain] + 153
9 com.apple.Foundation 0x00007fff89f2d5cc
_NSAppleEventManagerGenericHandler + 121
10 com.apple.AE 0x00007fff8d45934c
aeDispatchAppleEvent(AEDesc const*, AEDesc*, unsigned int, unsigned
char*) + 531
11 com.apple.AE 0x00007fff8d4590c9
dispatchEventAndSendReply(AEDesc const*, AEDesc*) + 31
12 com.apple.AE 0x00007fff8d458fd3
aeProcessAppleEvent + 295
13 com.apple.HIToolbox 0x00007fff90935c6e
AEProcessAppleEvent + 56
14 com.apple.AppKit 0x00007fff8e357da2 _DPSNextEvent
+ 2249
15 com.apple.AppKit 0x00007fff8e356e58
-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 346
16 com.apple.AppKit 0x00007fff8e34caf3
-[NSApplication run] + 594
17 com.apple.AppKit 0x00007fff8e2c9244
NSApplicationMain + 1832
18 com.macromates.TextMate.preview 0x000000010f533f19 main + 840
19 com.macromates.TextMate.preview 0x000000010f51e914 start + 52
Thanks!
--
Rob McBroom
http://www.skurfer.com/
Hello,
I have a few questions about the gutter and status bar:
Is there a way to fully turn off the gutter?
Is there a way to theme the gutter?
Is there a way to customize the gutter and only show the line numbers but not the fold markers, for example.
Is there a way to customize what is shown in the status bar, for example, to remove the record button? (I know the full status bar can be turned off with a ‘default’ command.)
Is there a way to fully turn off the “control bar” at the bottom of the file browser?
If the above are not currently possible, are there any plans to add support for such? Also, is the application architected in a way that (some of) the above would be straight forward to implement? If so, I would be willing to do it.
Thank you,
Erik
Hi,
I was trying to create a composed grammar for Gyb (https://github.com/apple/swift/blob/master/utils/gyb.py). Gyb is mostly Swift code, with some snippets of Python embedded. For embedding the Python code you surround the code with `%{ }%` or start the lines with `%`.
For parsing Swift or Python code I’m using the official bundles (https://github.com/textmate/swift.tmbundle and https://github.com/textmate/python.tmbundle). For the injection I based my grammar on HTML (Rails) (https://github.com/textmate/ruby-on-rails-tmbundle/blob/master/Syntaxes/HTM…) which is mostly the same idea.
The grammar almost works. The embedded blocks are marked and the syntax highlight works, but I need to include a space before the percent signs for it to work, which is not ideal. It looks like the percent sign are interpreted as keyword.operator.remainder.swift (https://github.com/textmate/swift.tmbundle/blob/master/Syntaxes/Swift.tmLan…) before being able to be part of the injected grammar.
I found some references that “left scope match” (L:) might be able to help, but I cannot find a way to get it working.
A simple version of my grammar looks like this:
```
{ injections = {
'source.swift.gyb - (meta.embedded.block.gyb)' = {
patterns = (
{ begin = '(^|\s*)(?=%\{(?![^\}]*\}%))';
end = '(?!\G)(\s*$\n)?';
beginCaptures = { 0 = { name = 'punctuation.whitespace.embedded.leading.gyb'; }; };
endCaptures = { 0 = { name = 'punctuation.whitespace.embedded.trailing.gyb'; }; };
patterns = ( { include = '#tags'; } );
},
{ include = '#tags'; },
);
};
};
patterns = ( { include = 'source.swift'; } );
repository = {
tags = {
patterns = (
{ name = 'meta.embedded.block.gyb';
begin = '%\{';
end = '(\})%';
beginCaptures = { 0 = { name = 'punctuation.section.embedded.begin.gyb'; }; };
endCaptures = {
0 = { name = 'punctuation.section.embedded.end.gyb'; };
1 = { name = 'source.python'; };
};
contentName = 'source.python';
patterns = ( { include = 'source.python'; } );
},
},
},
}
```
A text like this will work:
```
class MyClass {
%{
a = 1
}%
}
```
If I remove the space before the first percent sign, the grammar will not create the embedded block at all.
I tried using several scope selectors with `L:` to see if they work:
- `L:(source.swift.gyb - (meta.embedded.block.gyb))`
- `source.swift.gyb - (meta.embedded.block.gyb), L:source.swift.gyb`
- `source.swift.gyb - (meta.embedded.block.gyb), L:source.swift`
- `source.swift.gyb - (meta.embedded.block.gyb), L:source.swift keyword.operator.remainder.swift`
- `source.swift.gyb - (meta.embedded.block.gyb), L:keyword.operator.remainder.swift`
None of them seem to work.
Does someone has any tips about what should I try next?
Thanks!
Hello,
I am working around in the code, and I was trying to determine where the row iterator object used in layout.cc is defined so I might study it’s properties? Could anyone point me in the right direction? Much appreciated.
Josh
I just tried the new indent guides. I think it looks pretty ugly that
the indent guides are render over the full width of the document. In
most editors I've used which support this feature the indent guides are
rendered up to the start of the text on a given line.
--
/Jacob Carlborg
Hi -
For the last week or so, the contents of the Go to Symbol window have been totally scrambled for me in all the languages I’ve tried. Sometimes (After restarting TM) the Go to Symbol window contains the entire file on one line without linebreaks. Other times there are many lines, each with several lines worth of source in them, but no clear relation to any of the function definitions in the file.
I suspect this is a corrupted settings file somewhere; I’ve got my TM settings synced to Dropbox so when two different machines are open at the same time a number of things go screwy. I wasn’t sure how to start debugging this one though short of going spelunking in the source.
Is anybody familiar enough with the inner workings of this command to point me to what settings might be corrupted?
Cheers,
Evan
Example:
In the C code at the bottom, I would usually expect to see 4 lines in the list of symbols:
```
#include <stdio.h>
void other();
int main(){
void other(){
```
Instead, I get the entire contents of the file on one line:
```#include <stdio.h>void other();int main(){printf("line 1 after 'main' symbol\n");printf("line 2 after 'main' symbol\n");other();}void other(){printf("line 1 after 'other' symbol\n");printf("line 2 after 'other' symbol\n");}```
Source file:
```
#include <stdio.h>
void other();
int main(){
printf("line 1 after 'main' symbol\n");
printf("line 2 after 'main' symbol\n");
other();
}
void other(){
printf("line 1 after 'other' symbol\n");
printf("line 2 after 'other' symbol\n");
}
```
Hi,
what is the best way to share snippets or entire plugins, so that they can easily be installed and updated automatically by TextMate?
I still do not completely understand the Avian / Bundles mechanism and having to check manually for updates and “git pull” them is not very user friendly…
Fabian
Hi,
Am I right refresh running browser CMD-R does not work in 10.11.5
(HTML-bundle)?
After updating this morning to 10.10.5 and it does not work anymore on both
updated Macs.
version 2.0-beta.9.1. and version 2.0-beta.9.0
Regards,
Feek
--
View this message in context: http://textmate.1073791.n5.nabble.com/Refresh-running-browser-CMD-R-does-no…
Sent from the textmate users mailing list archive at Nabble.com.
Cap’n Proto is now available in MacPorts (capnproto). It would be nice
if TextMate automatically could identify Cap’n Proto when it's installed
in MacPorts.
--
/Jacob Carlborg
I have a bundle item I would like to use by pressing a keyboard
shortcut. The problem is that there is another bundle item that is
invoked instead. Is there a way to find out which bundle item is invoked?
--
/Jacob Carlborg
Is there a way to change or remove the added/removed/modified backgrounds in Git Commit Message?
Looks like predefined colors don't play nicely with every theme out there.
Hi all,
I try to make a bundle command in order to find a php-function definition
within project folder.
What I want to do is a "macro/snippet/command" that do the following:
- with the TM_CURRENT_WORD or TM_CURRENT_SELECTION
- search the current project (like CMD-SHIFT-F) with a regex search
(something like: (function)(.*)($TM_CURRENT_WORD)(/s+\() )
- open the CMD-SHIFT-F window with the search-results so you can select the
found result.
So is there a way to 'call' the search window, with the values filled in and
run the search?
It would be even better if one result is present, directly via a simple
popup:
- if found one result goto file / and function
- if multiple functions / files are found => selection box in order to
select the file
Or does are there other suggestions?
Regards,
Feek
--
View this message in context: http://textmate.1073791.n5.nabble.com/Call-Find-in-Project-window-in-a-bund…
Sent from the textmate users mailing list archive at Nabble.com.