Hi all,
I had some time to make TmCodeBrowser into a full-blown plugin. It now automatically scans files as you change windows/tabs or save files.
I will not have much time in the next few weeks to work on it (installer, documentation), but wanted to get it out for some feedback. It can be found here:
http://www.cocoabits.com/TmCodeBrowser2/TmCodeBrowser2.tgz
Installation:
- Unpack the package - Copy the InputManagersManager folder to ~/Library - Copy the InputManagers/InputManagersManager folder to ~/Library/ InputManagers, or if you do not have a ~/Library/InputManagers folder yet, copy the InputManagers folder to ~/Library - Restart TextMate
Features:
• TmCodeBrowser2 will use ctags to automatically update it's window each time you switch Textmate Windows and/or Tabs, as well as when you save a file.
• The 'Float' check box (when checked) makes the CodeBrowser window float on top of other windows.
• The 'Sort' check box (when checked) sorts the tree display.
• CodeBrowser remembers the expanded/contracted groups on a per language base.
• To reopen the window after it was closed, select 'Window/Show CodeBrowser' from the menu.
Enjoy!
Gerd Knops gerti-textmate@bitart.com
- Unpack the package
- Copy the InputManagersManager folder to ~/Library
- Copy the InputManagers/InputManagersManager folder to ~/Library/
InputManagers, or if you do not have a ~/Library/InputManagers
These two actions seem to do almost the same thing, right? Is this what you want in the end? ~/Library/InputManagers/InputManagers/InputManagersManager.bundle (with the info file)?
How does one invoke the stuff?
Andreas
On Tue, Oct 25, at 4:58 AM, Andreas Wahlin wrote:
- Unpack the package
- Copy the InputManagersManager folder to ~/Library
- Copy the InputManagers/InputManagersManager folder to ~/Library/
InputManagers, or if you do not have a ~/Library/InputManagers
These two actions seem to do almost the same thing, right? Is this what you want in the end? ~/Library/InputManagers/InputManagers/InputManagersManager.bundle (with the info file)?
I knew I should have changed the names...
You should end up with:
~/Library/InputManagers/InputManagersManager.bundle ~/Library/InputManagersManager/TextMate/TmCodeBrowser2.IMMbundle
Once you got this and restart TM you should see the CodeBrowser window.
Gerd
According to Gerd Knops:
Once you got this and restart TM you should see the CodeBrowser window.
TextMate refuses to run and crash after installing CodeBrowser. Panther 10.3.9.
2005-10-26 12:26:58.235 TextMate[7022] InputManagersManager startup 2005-10-26 12:26:58.242 TextMate[7022] InputManagersManager: TextMate: loading /Volumes/Users/roberto/Library/InputManagersManager/TextMate/TmCodeBrowser2.IMMbundle 2005-10-26 12:26:58.324 TextMate[7022] TmCodeBrowser2 loaded, app is TextMate 2005-10-26 12:26:58.431 TextMate[7022] An uncaught exception was raised 2005-10-26 12:26:58.432 TextMate[7022] *** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class (NSTreeController) 2005-10-26 12:26:58.432 TextMate[7022] *** Uncaught exception: <NSInvalidUnarchiveOperationException> *** -[NSKeyedUnarchiver decodeObjectForKey:]: cannot decode object of class (NSTreeController)
According to Ollivier Robert:
TextMate refuses to run and crash after installing CodeBrowser. Panther 10.3.9.
OK, Tiger only :-(
On 24 Oct 2005, at 23:02, Gerd Knops wrote:
I had some time to make TmCodeBrowser into a full-blown plugin. It now automatically scans files as you change windows/tabs or save files.
I haven't really had a chance to play around with it in anger yet, but initial impressions: you rock! Finally the 2,300 lines of MailManager.py[1] is navigable! :-)
[1] http://cvs.sourceforge.net/viewcvs.py/mailmanager/mailmanager/ MailManager.py?view=markup
Hi,
This seems pretty cool!
But here's a request for some minimal documentation: What hooks do you use to determine what to display in the code browser? I'd like to use it to navigate LaTeX files as well, if possible...
Jeroen.
On Tue, Oct 25, at 5:40 AM, Jeroen van der Ham wrote:
Hi,
This seems pretty cool!
Thanks!
But here's a request for some minimal documentation: What hooks do you use to determine what to display in the code browser? I'd like to use it to navigate LaTeX files as well, if possible...
Eventually I hope to hook into the Syntax Coloring engine, so any language TM knows would work. Currently though I use the "Exuberant CTAGS" [1]. They do not support LaTeX, but if regular expressions don't scare you, you can probably come up with some basic LaTeX support by creating a ~/.ctags file with just the right lines. Here is an example of a real basic and incomplete HTML definition (from before ctags had HTML support):
--langdef=html --langmap=html:.htm.html --regex-html=/<a[ \t]+href[ \t]*=[ \t]*"([^"]+)/\1/HRefs/i --regex-html=/<img[ \t]+src[ \t]*=[ \t]*"([^"]+)/\1/Images/i --regex-html=/<h([1-6])[^>]*>([^<]*)/\2 (\1)/Headers/i
Basically the --langdef line defines the name of the language, the -- langmap line the file extensions. One or more --regex lines then define what to parse out of the file, see the ctags manual [2] for more details. You can try your entries out in a terminal window (replace 'YourSourceFile'):
~/Library/InputManagersManager/TextMate/TmCodeBrowser2.IMMbundle/ Contents/Resources/ctags --fields=Kn --excmd=pattern --sort=no -f - YourSourceFile
Hope that helps!
Gerd
[1] http://ctags.sourceforge.net/ [2] http://ctags.sourceforge.net/ctags.html
This looks like it should be extremely cool. However, I cannot on my first pass make the window display any information. I've installed ctags from source. Can somebody (not necessarily Gerd) who's gotten this to work tell me what I should expect this to do out of the box?
(I was hoping my perl script would be parsed.)
Sorry, I don't really understand Gerd's HTML example either.
best wishes, Eric
On Tue, Oct 25, at 11:43 AM, Eric Hsu wrote:
This looks like it should be extremely cool. However, I cannot on my first pass make the window display any information. I've installed ctags from source. Can somebody (not necessarily Gerd) who's gotten this to work tell me what I should expect this to do out of the box?
(I was hoping my perl script would be parsed.)
Sorry, I don't really understand Gerd's HTML example either.
No need to install ctags, TmCodeBrowser uses it's internal version of exuberant ctags (the ctags installed on OS X is not exuberant ctags). It does support perl.
For a perl script to yield some results, it must have some subroutines, and either have one of the extensions *.pl *.pm *.plx *.perl, or it must be executable and have the typical '#!/some/path/ perl' first line.
Hope that helps!
Gerd
For a perl script to yield some results, it must have some subroutines, and either have one of the extensions *.pl *.pm *.plx *.perl, or it must be executable and have the typical '#!/some/path/perl' first line.
Ah, it's lovely! It's very nice to have the persistent window, actually.
I was confused because the TMCB 1 screenshot had a variable list as well as subroutines, so I thought it would pick up variables from a typical perl script.
Thanks for the short note... I know how annoying it is to release something and say there's no documentation and then have people ask for documentation. :)
best wishes, Eric
On Tue, Oct 25, at 1:12 PM, Eric Hsu wrote:
For a perl script to yield some results, it must have some subroutines, and either have one of the extensions *.pl *.pm *.plx *.perl, or it must be executable and have the typical '#!/some/ path/perl' first line.
Ah, it's lovely! It's very nice to have the persistent window, actually.
Glad it works for you now! I like the persistent window (as opposed to a popup) myself, helps navigating large and/or unknown sources. For some reason using a popup or the TM 'Go to symbol' window seems more prone to break my concentration than using the persistent window.
I was confused because the TMCB 1 screenshot had a variable list as well as subroutines, so I thought it would pick up variables from a typical perl script.
It does for some languages (the screenshot was from a 'C' source), but not for perl.
Thanks for the short note... I know how annoying it is to release something and say there's no documentation and then have people ask for documentation. :)
That's OK.
best wishes, Eric
Thanks!
Gerd
-- Eric Hsu, Assistant Professor of Mathematics San Francisco State University erichsu@math.sfsu.edu http://math.sfsu.edu/hsu
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
hi,
i wanted to know if anyone of you knows good resources where the writing of input managers is described.
thanks in advance
lukas pitschl
Am 25.10.2005 um 20:28 schrieb Gerd Knops:
On Tue, Oct 25, at 1:12 PM, Eric Hsu wrote:
For a perl script to yield some results, it must have some subroutines, and either have one of the extensions *.pl *.pm *.plx *.perl, or it must be executable and have the typical '#!/ some/path/perl' first line.
Ah, it's lovely! It's very nice to have the persistent window, actually.
Glad it works for you now! I like the persistent window (as opposed to a popup) myself, helps navigating large and/or unknown sources. For some reason using a popup or the TM 'Go to symbol' window seems more prone to break my concentration than using the persistent window.
I was confused because the TMCB 1 screenshot had a variable list as well as subroutines, so I thought it would pick up variables from a typical perl script.
It does for some languages (the screenshot was from a 'C' source), but not for perl.
Thanks for the short note... I know how annoying it is to release something and say there's no documentation and then have people ask for documentation. :)
That's OK.
best wishes, Eric
Thanks!
Gerd
-- Eric Hsu, Assistant Professor of Mathematics San Francisco State University erichsu@math.sfsu.edu http://math.sfsu.edu/hsu
_ For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
I second that, any links are appreciated (having a tough time getting started with the Apple docs). Thanks! _matt
On Oct 25, 2005, at 11:57 AM, Lukas Pitschl wrote:
hi,
i wanted to know if anyone of you knows good resources where the writing of input managers is described.
thanks in advance
lukas pitschl
Am 25.10.2005 um 20:28 schrieb Gerd Knops:
On Tue, Oct 25, at 1:12 PM, Eric Hsu wrote:
For a perl script to yield some results, it must have some subroutines, and either have one of the extensions *.pl *.pm *.plx *.perl, or it must be executable and have the typical '#!/ some/path/perl' first line.
Ah, it's lovely! It's very nice to have the persistent window, actually.
Glad it works for you now! I like the persistent window (as opposed to a popup) myself, helps navigating large and/or unknown sources. For some reason using a popup or the TM 'Go to symbol' window seems more prone to break my concentration than using the persistent window.
I was confused because the TMCB 1 screenshot had a variable list as well as subroutines, so I thought it would pick up variables from a typical perl script.
It does for some languages (the screenshot was from a 'C' source), but not for perl.
Thanks for the short note... I know how annoying it is to release something and say there's no documentation and then have people ask for documentation. :)
That's OK.
best wishes, Eric
Thanks!
Gerd
-- Eric Hsu, Assistant Professor of Mathematics San Francisco State University erichsu@math.sfsu.edu http://math.sfsu.edu/hsu
__ For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
_ For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
On 25/10/2005, at 17.50, Gerd Knops wrote:
Eventually I hope to hook into the Syntax Coloring engine, so any language TM knows would work.
Well, one of the reasons I haven't made a popup yet is, that the TM syntax coloring engine isn't really sufficient for all languages. I.e. there's no way it can capture obj-c multi-argument methods as one entity (since they are not that in the source), and coming up with rules to make it parse C++ functions is also all but simple (if not impossible).
So while it has the advantage of not repeating everything for the function popup/code browser, and supporting mixed documents (HTML with embedded CSS, JS, Ruby, PHP, etc.), it's not really working for the two languages I primarely use.
It also fails to capture source structure (scoping), so it wouldn't be able to show e.g. class methods, inner/local/anonymous classes under the class etc.
And great work making your ctags implementation work with TM! I'm curious, do you get by alone by NSWindow notification and querying representedFile? I'd think the tab-switching would require a little more than that!?!
I can easily add (i.e. next build) that TM e.g. loads extensions from AppSupport/TextMate/Plugins — it seems for your “plugin” it wouldn't need to expose any API, thus it's a safe way to slowly extend TM to support plugins (my conservatism is primarily caused by the fear of having to maintain a stupid legacy API for all eternity, that and lack of time of course).
On Oct 25, 2005, at 20:29, Allan Odgaard wrote:
On 25/10/2005, at 17.50, Gerd Knops wrote:
Eventually I hope to hook into the Syntax Coloring engine, so any language TM knows would work.
Well, one of the reasons I haven't made a popup yet is, that the TM syntax coloring engine isn't really sufficient for all languages. I.e. there's no way it can capture obj-c multi-argument methods as one entity (since they are not that in the source), and coming up with rules to make it parse C++ functions is also all but simple (if not impossible).
So while it has the advantage of not repeating everything for the function popup/code browser, and supporting mixed documents (HTML with embedded CSS, JS, Ruby, PHP, etc.), it's not really working for the two languages I primarely use.
Makes sense. To bad the exuberant ctags don't support ObjC either. Back then NeXTSTEP had a ctags version that knew ObjC, but the sources were never public. I wonder if the compiler could be tickled into cooperation...
And great work making your ctags implementation work with TM! I'm curious, do you get by alone by NSWindow notification and querying representedFile? I'd think the tab-switching would require a little more than that!?!
These details are so dirty that I'd prefer not to discuss them openly! Basically I am doing something similar to 'poseAsClass:', but on the method level. Did I mention it is dirty?
I can easily add (i.e. next build) that TM e.g. loads extensions from AppSupport/TextMate/Plugins — it seems for your “plugin” it wouldn't need to expose any API, thus it's a safe way to slowly extend TM to support plugins
That'd be great, that would at least avoid the InputManagers hack.
(my conservatism is primarily caused by the fear of having to maintain a stupid legacy API for all eternity, that and lack of time of course).
That I understand all to well! And the Commands actually take care of many things already. I could see an argument for bundles for project management, version control plugins, and may be (though that would probably be quite involved and hard to generalize for multiple languages) debugging. Almost everything else can be done with commands. I am really itching to change a few small details of the internal workings of TM (word characters on a per language base, handling of double-click extend), but the code in question seems to be mostly C++ which is a lot less hackable than ObjC...
Gerd
On 26/10/2005, at 6.19, Gerd Knops wrote:
I can easily add (i.e. next build) that TM e.g. loads extensions from AppSupport/TextMate/Plugins — it seems for your “plugin” it wouldn't need to expose any API, thus it's a safe way to slowly extend TM to support plugins
That'd be great, that would at least avoid the InputManagers hack.
And “double click to install”, which seems could have benefited a few users :)
[...] I am really itching to change a few small details of the internal workings of TM (word characters on a per language base, handling of double-click extend), but the code in question seems to be mostly C++ which is a lot less hackable than ObjC...
Yes, the model is mainly C++, and your requests are on the to-do, but at least the word characters is not a minor detail, since word characters are implemented through character traits, so the traits are static member functions which have no context what-so-ever (and the traits are used a lot of places).
On Wed, Oct 26, at 5:47 PM, Allan Odgaard wrote:
On 26/10/2005, at 6.19, Gerd Knops wrote:
I can easily add (i.e. next build) that TM e.g. loads extensions from AppSupport/TextMate/Plugins — it seems for your “plugin” it wouldn't need to expose any API, thus it's a safe way to slowly extend TM to support plugins
That'd be great, that would at least avoid the InputManagers hack.
And “double click to install”, which seems could have benefited a few users :)
Oh, forgot about that option! Yep, that'll make life a lot easier. So will the 'plugins' have a specific extension like 'tmplugin'?
[...] I am really itching to change a few small details of the internal workings of TM (word characters on a per language base, handling of double-click extend), but the code in question seems to be mostly C++ which is a lot less hackable than ObjC...
Yes, the model is mainly C++, and your requests are on the to-do, but at least the word characters is not a minor detail, since word characters are implemented through character traits, so the traits are static member functions which have no context what-so-ever (and the traits are used a lot of places).
The word characters I can live with, but the double-click extend is driving me bonkers about 100 times a day...
;-)
Gerd
Yup, it helped, here's a sample Latex snippet, it only grabs labels and (sub)*sections, but should be generally useful.
Also very cool that this works immediately, you don't need to restart TM or the codebrowser.
Jeroen.
--langdef=latex --langmap=latex:.tex --regex-latex=/\label{*([^} \t]+)[ \t]*}/\1/l,label/ --regex-latex=/^\(sub)*section{([^}]*)}/\2/s,section/
At 4:09 PM +0200 10/26/05, Jeroen van der Ham wrote:
Yup, it helped, here's a sample Latex snippet, it only grabs labels and (sub)*sections, but should be generally useful.
Also very cool that this works immediately, you don't need to restart TM or the codebrowser.
Jeroen.
--langdef=latex --langmap=latex:.tex --regex-latex=/\label{*([^} \t]+)[ \t]*}/\1/l,label/ --regex-latex=/^\(sub)*section{([^}]*)}/\2/s,section/
Could you give one more level of detail? What does one do with this text? I didn't follow Gerd's first explanation... sorry.
- Eric
On Wed, Oct 26, at 11:56 AM, Eric Hsu wrote:
At 4:09 PM +0200 10/26/05, Jeroen van der Ham wrote:
Yup, it helped, here's a sample Latex snippet, it only grabs labels and (sub)*sections, but should be generally useful.
Also very cool that this works immediately, you don't need to restart TM or the codebrowser.
Jeroen.
--langdef=latex --langmap=latex:.tex --regex-latex=/\label{*([^} \t]+)[ \t]*}/\1/l,label/ --regex-latex=/^\(sub)*section{([^}]*)}/\2/s,section/
Could you give one more level of detail? What does one do with this text? I didn't follow Gerd's first explanation... sorry.
Create a file named '.ctags' (note the leading dot) in your home directory, and add the lines above to that file.
Gerd
- Eric
-- Eric Hsu, Assistant Professor of Mathematics San Francisco State University erichsu@math.sfsu.edu http://math.sfsu.edu/hsu
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
At 12:03 PM -0500 10/26/05, Gerd Knops wrote:
Create a file named '.ctags' (note the leading dot) in your home directory, and add the lines above to that file.
Thanks! It's working great now. I see (on review) that I missed that line in your original e-mail.
best, Eric
I get:
2005-10-26 15:45:15.724 TextMate[15446] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager.bundle
in the console. The permissions are:
drwxr-xr-x 3 haris staff 102 Sep 2 13:15 InputManagersManager.bundle
no window shows up. Any thoughts? Do I need to be administrator?
Haris
On Wed, Oct 26, at 3:49 PM, Charilaos Skiadas wrote:
I get:
2005-10-26 15:45:15.724 TextMate[15446] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager.bundle
You went one level to deep when copying. You need
/Users/haris/Library/InputManagers/InputManagersManager/ InputManagersManager.bundle /Users/haris/Library/InputManagers/InputManagersManager/Info
Gerd
On Oct 26, 2005, at 5:34 PM, Gerd Knops wrote:
On Wed, Oct 26, at 3:49 PM, Charilaos Skiadas wrote:
I get:
2005-10-26 15:45:15.724 TextMate[15446] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager.bundle
You went one level to deep when copying. You need
/Users/haris/Library/InputManagers/InputManagersManager/ InputManagersManager.bundle /Users/haris/Library/InputManagers/InputManagersManager/Info
Ok, I reinstalled them, but still a no go: 2005-10-26 18:25:56.869 TextMate[14896] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager
haris$ ls -la Library/InputManagers/InputManagersManager/ total 32 drwxr-xr-x 6 haris haris 204 Oct 26 18:24 . drwxr-xr-x 4 haris haris 136 Oct 26 18:24 .. -rw-r--r-- 1 haris haris 6148 Oct 26 18:24 .DS_Store -rw-r--r-- 1 haris haris 4096 Aug 18 14:07 Info -rw-r--r-- 1 haris haris 438 Aug 18 14:07 Info.1 drwxr-xr-x 3 haris haris 102 Sep 2 13:15 InputManagersManager.bundle
Running 10.4.2
Gerd
Haris
On Oct 26, 2005, at 20:18, Charilaos Skiadas wrote:
Ok, I reinstalled them, but still a no go: 2005-10-26 18:25:56.869 TextMate[14896] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager
haris$ ls -la Library/InputManagers/InputManagersManager/ total 32 drwxr-xr-x 6 haris haris 204 Oct 26 18:24 . drwxr-xr-x 4 haris haris 136 Oct 26 18:24 .. -rw-r--r-- 1 haris haris 6148 Oct 26 18:24 .DS_Store -rw-r--r-- 1 haris haris 4096 Aug 18 14:07 Info -rw-r--r-- 1 haris haris 438 Aug 18 14:07 Info.1 drwxr-xr-x 3 haris haris 102 Sep 2 13:15 InputManagersManager.bundle
Running 10.4.2
That looks wrong. There should not be an 'Info.1' file, and the 'Info' file should be 438 bytes, not 4096 bytes.
Gerd
On Oct 26, 2005, at 10:20 PM, Gerd Knops wrote:
On Oct 26, 2005, at 20:18, Charilaos Skiadas wrote:
Ok, I reinstalled them, but still a no go: 2005-10-26 18:25:56.869 TextMate[14896] Can't open input server / Users/haris/Library/InputManagers/InputManagersManager
haris$ ls -la Library/InputManagers/InputManagersManager/ total 32 drwxr-xr-x 6 haris haris 204 Oct 26 18:24 . drwxr-xr-x 4 haris haris 136 Oct 26 18:24 .. -rw-r--r-- 1 haris haris 6148 Oct 26 18:24 .DS_Store -rw-r--r-- 1 haris haris 4096 Aug 18 14:07 Info -rw-r--r-- 1 haris haris 438 Aug 18 14:07 Info.1 drwxr-xr-x 3 haris haris 102 Sep 2 13:15 InputManagersManager.bundle
Running 10.4.2
That looks wrong. There should not be an 'Info.1' file, and the 'Info' file should be 438 bytes, not 4096 bytes.
Hm, that's interesting. Stuffit Expander unpackaged it, and that's what it gave me. I tried it on two machines, and the same thing happened in both. So I removed the Info file, and renamed Info.1 to Info, and now it works fine. Just tried it out for 30 seconds, and I have to say:
THIS THING IS AMAZING!!!! THANK YOU THANK YOU THANK YOU!!!!
I am in the process of writing my thesis in latex, so as you can imagine this will be particularly useful as the number of pages increases. :-)
Gerd
Haris
Charilaos Skiadas wrote:
THIS THING IS AMAZING!!!! THANK YOU THANK YOU THANK YOU!!!!
I am in the process of writing my thesis in latex, so as you can imagine this will be particularly useful as the number of pages increases. :-)
I must say that I like it very much too.
Initially I created the labels ctags as something that I copied from some other website and thought that the section overview would be the main use. But if you use the labels according to the snippets (fig:…, sec:…) then it becomes a very nice way to have an overview of all your labels.
Jeroen.
On 27/10/2005, at 5.32, Charilaos Skiadas wrote:
Hm, that's interesting. Stuffit Expander unpackaged it, and that's what it gave me. I tried it on two machines, and the same thing happened in both. So I removed the Info file, and renamed Info.1 to Info, and now it works fine.
StuffIt Expander did this for me, too, with a QuickSilver zip or tar or similar. I also got some weird .1 files inside the unpacked folder. I ended up using the shell commands instead, which worked.
-- Sune.
According to Gerd Knops:
That looks wrong. There should not be an 'Info.1' file, and the 'Info' file should be 438 bytes, not 4096 bytes.
Would it be too difficult to make it running on Panther?
Please please pretty please with sugar on top?
On Thu, Oct 27, at 5:43 AM, Ollivier Robert wrote:
According to Gerd Knops:
That looks wrong. There should not be an 'Info.1' file, and the 'Info' file should be 438 bytes, not 4096 bytes.
Would it be too difficult to make it running on Panther?
Please please pretty please with sugar on top?
Very sorry, but that is not likely to happen unless someone pays me to do it. It would require a complete rewrite and a lot more code.
Gerd
According to Gerd Knops:
Very sorry, but that is not likely to happen unless someone pays me to do it. It would require a complete rewrite and a lot more code.
Fair enough.
/me wanders off to kick Checkpoint a bit more
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Oct 25, 2005, at 3:40 AM, Jeroen van der Ham wrote:
I'd like to use it to navigate LaTeX files as well, if possible...
Here Here! A second vote for LaTeX.
Robert
what languages are currently supported by the tmcodebrowser? so far only php worked for me, but that's awsome.
is there python support, as that would make my life and hopefully the life of other programers as well much easier.
lukas Am 27.10.2005 um 15:14 schrieb Robert M. Ullrey:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Oct 25, 2005, at 3:40 AM, Jeroen van der Ham wrote:
I'd like to use it to navigate LaTeX files as well, if possible...
Here Here! A second vote for LaTeX.
Robert
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (Darwin)
iD8DBQFDYNK3HhcUe115Kz8RAtBOAJ9MyWm6yoQ3Gpmafn4HaW0giQr3YwCfSZSW QhgOH87iJ/64uqut44rFvH8= =lDQM -----END PGP SIGNATURE-----
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
On Thu, Oct 27, at 10:02 AM, Lukas Pitschl wrote:
what languages are currently supported by the tmcodebrowser? so far only php worked for me, but that's awsome.
TmCodeBrowser uses the Exubernat Ctags [1] to do the heavy lifting, so anything they support should work:
Assembler ASP Awk BETA C C++ C# COBOL Eiffel Erlang Fortran HTML Java JavaScript Lisp Lua Make Pascal Perl PHP PL/SQL Python REXX Ruby Scheme Shell scripts (Bourne/Korn/Z) S-Lang SML (Standard ML) Tcl Vera Verilog Vim YACC
is there python support, as that would make my life and hopefully the life of other programers as well much easier.
Python should work out of the box. To be recognized as python the extension must be either *.py or *.python, or the file must be executable and have '#!/some/path/python' on the first line. It is possible to map other extensions to a language by adding a '-- langmap' to the ~/.zshrc file, please check the Exuberant Ctags manual [2] for details.
Gerd
[1] http://ctags.sourceforge.net/ [2] http://ctags.sourceforge.net/ctags.html
On Thu, Oct 27, at 8:14 AM, Robert M. Ullrey wrote:
On Oct 25, 2005, at 3:40 AM, Jeroen van der Ham wrote:
I'd like to use it to navigate LaTeX files as well, if possible...
Here Here! A second vote for LaTeX.
Just create a file ~/.ctags containing these lines (courtesy of Jeroen van der Ham):
--langdef=latex --langmap=latex:.tex --regex-latex=/\label{*([^} \t]+)[ \t]*}/\1/l,label/ --regex-latex=/^\(sub)*section{([^}]*)}/\2/s,section/
Gerd
great job, it's really amazing
regards
lukas
Am 25.10.2005 um 00:02 schrieb Gerd Knops:
Hi all,
I had some time to make TmCodeBrowser into a full-blown plugin. It now automatically scans files as you change windows/tabs or save files.
I will not have much time in the next few weeks to work on it (installer, documentation), but wanted to get it out for some feedback. It can be found here:
http://www.cocoabits.com/TmCodeBrowser2/TmCodeBrowser2.tgz
Installation:
- Unpack the package
- Copy the InputManagersManager folder to ~/Library
- Copy the InputManagers/InputManagersManager folder to ~/Library/
InputManagers, or if you do not have a ~/Library/InputManagers folder yet, copy the InputManagers folder to ~/Library
- Restart TextMate
Features:
• TmCodeBrowser2 will use ctags to automatically update it's window each time you switch Textmate Windows and/or Tabs, as well as when you save a file.
• The 'Float' check box (when checked) makes the CodeBrowser window float on top of other windows.
• The 'Sort' check box (when checked) sorts the tree display.
• CodeBrowser remembers the expanded/contracted groups on a per language base.
• To reopen the window after it was closed, select 'Window/Show CodeBrowser' from the menu.
Enjoy!
Gerd Knops gerti-textmate@bitart.com
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
Hey, this is cool. Is there any way to make it use ctags over the whole project (and maybe assign a keyboard shortcut to go to the function definition that's under the cursor)?
Thanks,
-Oscar
On Oct 24, 2005, at 3:02 PM, Gerd Knops wrote:
Hi all,
I had some time to make TmCodeBrowser into a full-blown plugin. It now automatically scans files as you change windows/tabs or save files.
I will not have much time in the next few weeks to work on it (installer, documentation), but wanted to get it out for some feedback. It can be found here:
http://www.cocoabits.com/TmCodeBrowser2/TmCodeBrowser2.tgz
Installation:
- Unpack the package
- Copy the InputManagersManager folder to ~/Library
- Copy the InputManagers/InputManagersManager folder to ~/Library/
InputManagers, or if you do not have a ~/Library/InputManagers folder yet, copy the InputManagers folder to ~/Library
- Restart TextMate
Features:
• TmCodeBrowser2 will use ctags to automatically update it's window each time you switch Textmate Windows and/or Tabs, as well as when you save a file.
• The 'Float' check box (when checked) makes the CodeBrowser window float on top of other windows.
• The 'Sort' check box (when checked) sorts the tree display.
• CodeBrowser remembers the expanded/contracted groups on a per language base.
• To reopen the window after it was closed, select 'Window/Show CodeBrowser' from the menu.
Enjoy!
Gerd Knops gerti-textmate@bitart.com
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
-- pgp fingerprint: BC64 2E7A CAEF 39E1 9544 80CA F7D5 784D FB46 16C1
On 10/24/05, Gerd Knops gerti@bitart.com wrote:
Hi all,
I had some time to make TmCodeBrowser into a full-blown plugin. It now automatically scans files as you change windows/tabs or save files.
With the latest TM build I cannot get the feature of TmCodeBrowser where a click in the tag list will scroll to that line in the document to work. Does anybody else experience this problem?
-- -Corey O'Connor
Corey O'Connor wrote:
With the latest TM build I cannot get the feature of TmCodeBrowser where a click in the tag list will scroll to that line in the document to work. Does anybody else experience this problem?
I'm also having this problem (1.1b17 632). Any suggestions?
Regards, Ruben
On Thu, Oct 27, at 1:43 AM, Ruben Debeerst wrote:
Corey O'Connor wrote:
With the latest TM build I cannot get the feature of TmCodeBrowser where a click in the tag list will scroll to that line in the document to work. Does anybody else experience this problem?
I'm also having this problem (1.1b17 632). Any suggestions?
Mea culpa, I forgot to escape the file names. So currently it does not work for filenames containing spaces. Will be fixed in the next version.
Gerd