protocool / ackmate Goto Github PK
View Code? Open in Web Editor NEWTextMate plugin (Cocoa) shell for running 'ack'
License: MIT License
TextMate plugin (Cocoa) shell for running 'ack'
License: MIT License
I have a project into which I've dragged the folders ~/foo/bar/ and ~/foo/baz/. When I search the project with AckMate, I also get results from ~/foo/blah/. It appears that AckMate is determining that the common ancestor of my folders is ~/foo/ and is searching its contents.
The command line version of ack appears to handle this correctly. I do "cd ~/foo; ack expression bar baz", I do not get results from blah.
In the standard find/replace dialog you can use a couple of key combo's to toggle the checkboxes. cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Regular Expression".
It would be useful to have Ackmate respond to the same key combos. So cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Literal Match".
Ack in Project had the ability to only search the selected folder in the project drawer. I don't seem to be able to get this working in AckMate. I'd love to have this back because my projects can get quite large and the searches take much longer than they should.
Okay, it's a bit snarky to file this as an issue, but I'm about to install "Ack In Project" specifically so I can search an arbitrary subdirectory. "Time to switch to AckMate folks..." (the latest commit message there as of this writing) is nice and all, but 'ack in subfolder' is the one use case I really like -- rather than scrolling past a bunch of stuff I don't want to see, I'd rather not have it appear in the first place.
Hello, I did love Ack in Project and I'm now fond of AckMate, which I use a lot. This is however an annoying bug, if I close a project while a search is still running, it crashes Textmate badly, loosing any changes I may have in other files. I'm using Snow Leopard, I've tried using both TextMate 1.5.9 (1510) and TextMate 1.5.9 (1589).
I'm ignoring the build
directory using the following contents matching pattern in my project settings
!.*/(\.[^/]*|CVS|build|_darcs|_MTN|\{arch\}|blib|.*~\.nib|.*\.(framework|app|pbproj|pbxproj|xcode(proj)?|bundle))$
It would be nice if AckMate could _ack_knowledge that. Right now "Using TextMate folder references" only respects the application settings for folder references.
I have some custom extensions defined in ~/.ackrc and AckMate is reading some and ignoring others. Here is are the contents of the file:
--type-add=html=.haml,.liquid
--type-add=css=.sass
--ignore-dir=vendor
--ignore-dir=templates
I am using version 1.1.1 of AckMate because of the utf8 bug already mentioned in the know issue list as well as the latest release of textmate. When I do a search I get results from haml and liquid files but not from sass files. The really odd thing is that if I put this line ( --type-add=css=.sass) in the options input on the search I do get result hits from sass files. I cannot figure out why it works one way and not the other. I tried upgrading to 1.1.2, but that doesn't fix the issue.
Please Help.
(This issue the same as topfunky/PeepOpen-Issues#64)
Another person with same issue:
https://gist.github.com/1184968
Always the same stack track of NSTokenField respondsToSelector:... spoke with Allan Osgard and he said Textmate doesn't even use a NSTokenField and since AckMate did there is a good chance the crash could fall on AckMate's shoulders... can anyone else seeing this problem please jump in here.
My log:
Process: TextMate [34526]
Path: /Applications/TextMate.app/Contents/MacOS/TextMate
Identifier: com.macromates.textmate
Version: 1.5.10 (1631)
Code Type: X86 (Native)
Parent Process: launchd [179]
Date/Time: 2011-08-31 23:33:14.336 -0400
OS Version: Mac OS X 10.7.1 (11B2118)
Report Version: 9
Interval Since Last Report: 14321 sec
Crashes Since Last Report: 1
Per-App Interval Since Last Report: 14313 sec
Per-App Crashes Since Last Report: 1
Anonymous UUID: 005762D1-9097-4963-A23D-6411890272E0
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000d0141aa1
VM Regions Near 0xd0141aa1:
CG shared images 00000000c2b47000-00000000c2b4f000 [ 32K] r--/r-- SM=SHM
-->
Submap 00000000ffff0000-00000000ffff2000 r-x/r-x process-only submap
Application Specific Information:
objc_msgSend() selector name: respondsToSelector:
objc[34526]: garbage collection is OFF
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x96406d47 objc_msgSend + 23
1 com.apple.AppKit 0x977302f1 -[NSTokenField respondsToSelector:] + 416
2 com.apple.AppKit 0x97731bc9 -[NSTokenFieldCell _attributedStringForRepresentedObjects:] + 105
3 com.apple.AppKit 0x97735d46 -[NSTokenFieldCell _unformattedAttributedStringValue:] + 103
4 com.apple.AppKit 0x970e7e5c -[NSCell _attributedStringValue:invalid:] + 269
5 com.apple.AppKit 0x970e7d20 -[NSCell attributedStringValue] + 172
6 com.apple.AppKit 0x970f5a5b __NSGetStringAndAttributesFromTextCell + 86
7 com.apple.AppKit 0x970f47a9 _NSDrawTextCell + 257
8 com.apple.AppKit 0x970f3f53 -[NSTextFieldCell drawInteriorWithFrame:inView:] + 776
9 com.apple.AppKit 0x970f3c40 -[NSTextFieldCell drawWithFrame:inView:] + 893
10 com.apple.AppKit 0x970eba0c -[NSControl drawRect:] + 373
11 com.apple.AppKit 0x970b497a -[NSView _drawRect:clip:] + 3717
12 com.apple.AppKit 0x970e46e3 -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 1958
13 com.apple.AppKit 0x970b22db -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 708
14 com.apple.AppKit 0x970b3448 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5169
15 com.apple.AppKit 0x970b3448 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5169
16 com.apple.AppKit 0x970b3448 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5169
17 com.apple.AppKit 0x970b3448 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5169
18 com.apple.AppKit 0x970b3448 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 5169
19 com.apple.AppKit 0x970b18e5 -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 259
20 com.apple.AppKit 0x970acf59 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 4817
21 com.apple.AppKit 0x970a5e5d -[NSView displayIfNeeded] + 1365
22 com.apple.AppKit 0x970a2c35 -[NSWindow displayIfNeeded] + 316
23 com.apple.AppKit 0x970a572c _handleWindowNeedsDisplayOrLayoutOrUpdateConstraints + 804
24 com.apple.CoreFoundation 0x9be4faad _runLoopObserverWithBlockContext + 29
25 com.apple.CoreFoundation 0x9be1c07e __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 30
26 com.apple.CoreFoundation 0x9be1bfbd __CFRunLoopDoObservers + 413
27 com.apple.CoreFoundation 0x9bdee994 __CFRunLoopRun + 1044
28 com.apple.CoreFoundation 0x9bdee1ec CFRunLoopRunSpecific + 332
29 com.apple.CoreFoundation 0x9bdee098 CFRunLoopRunInMode + 120
30 com.apple.HIToolbox 0x93e37487 RunCurrentEventLoopInMode + 318
31 com.apple.HIToolbox 0x93e3ecee ReceiveNextEventCommon + 168
32 com.apple.HIToolbox 0x93e3ec32 BlockUntilNextEventMatchingListInMode + 88
33 com.apple.AppKit 0x970656c0 _DPSNextEvent + 678
34 com.apple.AppKit 0x97064f2d -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 113
35 com.apple.AppKit 0x9706129f -[NSApplication run] + 904
36 com.apple.AppKit 0x972f4928 NSApplicationMain + 1054
37 com.macromates.textmate 0x0012e4f2 main + 168
38 com.macromates.textmate 0x0000610e _start + 216
39 com.macromates.textmate 0x00006035 start + 41
"Use TextMate folder references" should also use the file pattern references.
When searching inside a project with symlinked folders, the search result is opened in a new window instead of a tab. Jumping to the correct line doesn't work neither.
A list based UI to add ignored directory names would be very useful. I have to enter a large number of these options through the Options field. Adding a line for the -G and a checkbox for --invert-file-match would be helpful as well.
Hi, are your sure that command+option+control+F - it's the easiest combination to call AckMate ?
see these errors in red. often.
utf8 "\xD1" does not map to Unicode at /Users/../Contents/Resources/ackmate_ack line 1560, <$fh> line 1.
Malformed UTF-8 character (unexpected non-continuation byte 0x20, immediately after start byte 0xd1) in pattern match (m//) at /Users/../Contents/Resources/ackmate_ack line 1568.
I have a large data directory in my profile... I've tried --ignore-dir=data, but that doesn't work... I've already tried playing around with --ackmate-dir-filter, but I can't get that to work either.
Please advise?
My global TextMate folder patterns and the project's folder patterns both exclude a directory named coverage. I have "Use TextMate folder references" checked but this directory is still included in search results unless I add "--ignore-dir=coverage" to my options.
It might be an issue with Ack directly, but it doesn’t seem to be possible to search for words containing local characters like Å, Ä and Ö. Also, the selection is wrong when you search for a partial word that contains those characters.
Please check this error. I was not able to copy the text, so pasted screenshot.
http://img63.imageshack.us/img63/2135/ackmate112error.jpg
the same search worked with 1.1.1
I had to modify ~/Library/Application Support/TextMate/PlugIns/AckMate.tmplugin/Contents/Resources/ackmate_ack (line 1196) to add haml
Thank you
In the standard find/replace dialog you can use a couple of key combo's to toggle the checkboxes. cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Regular Expression".
It would be useful to have Ackmate respond to the same key combos. So cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Literal Match".
also, this bug was closed for a bogus reason and should be reopened: https://github.com/protocool/AckMate/issues/closed#issue/13
I would like to use the new --invert-file-match option in ack 1.96 - can you upgrade the bundled version to 1.96?
Could we search by file's extensions? Like I only want to see results in .rb, or .js .css files.
It appears that AckMate ignores HAML files as its ack
doesn't know the file type. I've tried to teach it the file type using a ~/.ackrc
file but the embedded ackmate_ack
is throwing errors at my --type-set haml=.haml
directive.
A command line ackmate_ack --type-set haml=.haml foo /my/project
works, tho.
So I'm unsure whether it'd be easier to fix AckMate's issues with the .ackrc
file or bake in HAML support.
Also, I hope this project isn't dead by now. :)
Whenever I search for anything I get a few dozen of these after my correct search results. Even an empty search result will have them:
utf8 "\xE2" does not map to Unicode at /Users/pbhogan/Library/Application Support/TextMate/PlugIns/AckMate.tmplugin/Contents/Resources/ackmate_ack at line 1560, <$fh> line 1.
Malformed UTF-8 character (unexpected non-continuation byte 0xe3, immediately after start byte 0xe2 in pattern match (m//) at /Users/pbhogan/Library/Application Support/TextMate/PlugIns/AckMate.tmplugin/Contents/Resources/ackmate_ack at line 1568.
When you choose show information ( or press Cmd+I) from the project root, you can define folder patterns on a per project basis. AckMate should respect these inclusions/exclusions as well.
AckMate rocks. I want to set it to the default CMD+SHIFT+F, however it doesnt have Replace functionality. This is fine, but is there a way you could have a button that switches back to the default textmate search and replace?
Ideal workflow:
extra points if you have a toggle command that I can map to command+shift+f:
Feel free to close this bug if it sounds too crazy. I'm fine having 2 shortcuts, but it would be even more awesome if it were just one.
Thanks!
I am trying to search for stuff that appears in my .rake files using the "rake" type option but am getting no results.
In the mean time, I've added the .rake extension to my Ruby type:
--type-add=ruby=.haml,.rake,.rsel,.liquid,.feature,.sjs,.treetop
I've confirmed that the search works for the modified "ruby" type that also includes the .rake extension.
Any ideas on why searching the rake type wouldn't work though? I tried changing the "rake" type in my .ackrc to see if I could manually add .rake but that type appears immutable.
Let me know if this is an Ack issue rather than an AckMate issue.
A humble request:
Support textmate 2 since it went open source
Cheers
Is there any chance of upgrading the version of ack used in the plugin to a more recent version? 1.96 seems to be the current version and it has some options which I'd like to use that the ackmate version (1.92) doesn't have. E.g., --color-lineno. Having an incompatibility between the ackmate version and the command-line one means that a single .ackrc can't be used.
I can't reproduce it reliably, but sometimes the selection of the search text is not correct when the file is already opened.
When I open AckMate.tmplugin (from the Finder) using TextMate 2.0 Alpha, the plugin does not register itself. Instead a new editor window opens (viewing the contents of the tmplugin bundle folder).
Opening AckMate.tmplugin with an pre-2.0 version of TextMate like 1.5.10 works fine.
In the standard find/replace dialog you can use a couple of key combo's to toggle the checkboxes. cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Regular Expression".
It would be useful to have Ackmate respond to the same key combos. So cmd-alt-i toggles "Ignore Case" and cmd-alt-r toggles "Literal Match".
It'd be nice if I could search/open files without having to use my mouse.
I can tab my way to the results, and move to the file I want, but I would like to be able to open files without using my mouse. Am I just missing a shortcut? Pressing return just searches again.
The previous bundle implementation rooted searches at the selected folder, rather than the project root. Any plans on adding that functionality to this implementation?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.