[TxMt] TextMate Code Completion (Tasks)

thomas Aylott oblivious at subtlegradient.com
Thu Dec 7 15:06:02 UTC 2006


Ok. There are now a bunch of people that have signed on to work on  
this thing.

Time to start divvying up the workload.

#1: First, we need a Ruby Class for the core essentials of the  
completion stuff. It needs to:
	Be an external library that can be called from a hundred different  
tmCommands
	Be fully runnable from the terminal by manually passing in all the  
arguments (so, use the TM_* vars only as fallback)
	Get the text you're in the middle of writing
	Get the list of completions based on that text from somewhere (see #2)
	Show the menu and let you make your selection
	Return a snippet with the results

#2: To go with the first one, we need to define the format that the  
list will be in. Plist format, simple or xml or binary
	This list will either be:
		the contents of a static file or
		a command that returns the list in the necessary format
			(this is where you could write something smart to parse stuff)
	I'd like to use the .completions file extenstion,  
maybe .tmCompletions ?
	Eventually we could pressure Allan into more advanced support for it ;)

Once we have the basic format (#2) and the basic completer (#1), we  
can… (#3)

#3: Start writing static plist lists of completions. This is not  
ideal for all languages, obviously, but will make the completer  
useful quickly. Best for code like HTML that is just what it is.
	HTML 4
	XHTML
	CSS
	JavaScript Core Stuff

#3.5: tmCompletions generators.
	Maybe something that will parse your entire Rails application and  
manually create a code completion list of all the Classes and methods.
	Maybe something to convert an hdoc into a codecompletion list

While some people are busy with #3, other people can get on with #4

#4: My real goal of this whole thing. Dynamic lists.
	I figure this part will take the form of various plugins for various  
languages and libraries and your own personal code libraries and  
whatever you like.
	Could be based on stuff done in #3.5
	We need to work with #1 and #2 to make sure everything needed for #4  
is available and extendable.
	

Ok, so who wants to do what?
Personally, I want to do all of it, but i have a job and a family and  
other stuff I need to do.
So i guess we should divvy it up and get it done faster.


thomas Aylott — design42 — subtleGradient — CrazyEgg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macromates.com/textmate/attachments/20061207/6f49363b/attachment.html>


More information about the textmate mailing list