MaxSense

Community Forums/Showcase/MaxSense

Dabhand(Posted 2010) [#1]
MaxSense is an Intellisense/Code completion feature I've plonked into the offical MaxIDE code, it was originally wrote for development on Linux, as the lack of decent IDE's on there is a bit iffy.

http://www.blitzmonkeys.com/maxsense

Version 1.3 - Released 19/02/10
Version 1.2 - Released 16/02/10
Version 1.1 - Released 15/02/10
Version 1.0 - Released 11/02/10

Dabz


GaryV(Posted 2010) [#2]
Awesome, work Dabz!


Dabhand(Posted 2010) [#3]

Awesome, work Dabz!



Thanks, not bad considering my level of intellect eh! ;)

Its not perfect (What is), but, it seems to do the job, and generally, needs more work... Just have to see what people find! :)

Dabz


Dabhand(Posted 2010) [#4]
Version 1.0 released. (Check sig or top post)

Dabz


therevills(Posted 2010) [#5]
Looking good Dabz :)


johnnyfreak(Posted 2010) [#6]
Great! how can i change the combo keys to open intellisense?
I'd like to use ctrl+space

Another feature missing is the integration with includes.
On a code like

include "mytpe.bmx"

local t:Mytype = new mytype
t.| -> use intellisense


it doesn't work yet.


matibee(Posted 2010) [#7]
Looking good indeed. You've probably got lots of improvements in-mind already, but here goes anyway..

It'd be nice to see the function/method decleration in the list and not just the name
Inserting happens in front of the cursor
Inserting doesn't affect the undo buffer

It's a great start though.


Dabhand(Posted 2010) [#8]

Great! how can i change the combo keys to open intellisense?



Currently, you cannot... Though, many people have asked for Ctrl+space, so it will be in there soon! :)


Another feature missing is the integration with includes.
On a code like



When you activate MaxSense using F8, it will scan the directory the current source code file is located in, as well as its sub-folders, if one of the files has been 'locked, using the menu item 'Program/Lock build file', the current 'build' file directory will be used instead.

So, in this case, your 'mytpe.bmx' file is in the same folder, it should pick it up?

Can you post the code in your mytpe.bmx file please, just so I can have a look... Basically, MaxSense is designed to run around how I code, so, it will inevitably slip up with others, though, the more code people show, the more I can tweak it.

EDIT: I think I've discovered what your seeing, which is odd because that was one of the things I wanted working before releasing, and it looks like I've buggered it a little! :)


It'd be nice to see the function/method decleration in the list and not just the name



If you look at the MaxSense windows status bar, it should provide info on the function/method.

EDIT: lol, I've just picked up on how your selecting a property in the list... Your using the arrow keys which doesnt update the statusbar... Me bad!

If you click, or type into the box, you'll see that it works accordingly, will fix that straight away!


Inserting happens in front of the cursor



Your using Windows! :) I cannot get the 'move the cursor along' thing to work on Linux (Which this is being developed on), and as such, it never got implemented it in Windows (As I spend a lot of time in Ubuntu now, but, I'll sort it! :)


Inserting doesn't affect the undo buffer



Never even looked at that yet, though, a must I agree! :)

Dabz


Dabhand(Posted 2010) [#9]
@johnnyfreak

Can you please download this, it has two source files in, one called Main.bmx, and one called Inc.bmx:-

http://www.blitzmonkeys.com/maxsense/download/MaxSenseSearchTest.zip

Open 'Main.bmx' into the MaxSense enabled IDE, you should see the definition of an object called 't' which is a 'MyType' type:-

Local t:MyType


The 'Inc.bmx' file contains the following:-

Type MyType
	Field x:Int
	
	Method MyMethod()
		Print "Hello"
	End Method
End Type


But you shouldnt need to open that.

Just try what you did above one this... As this works here:-

t.| -> use intellisense


Dabz


johnnyfreak(Posted 2010) [#10]
Reading how it works i've found out why it doesn't find type informations.
it was my fault and a limit of your searching alg.
include "../mytpe.bmx"  '<==== see the parent dir

local t:Mytype = new mytype
t.| -> use intellisense


So your intellisense fails trying to find on current dir and subdirs because the code is in the parent dir!

Why i use something similar? Because my project folders are similar to this

MainFolder
   -------> testFolder
                  | testfile1.bmx   'here the include "../mytype.bmx"
                  | testfile2.bmx
  | mytype.bmx
  ...


your intellisense should check for include paths


Dabhand(Posted 2010) [#11]

it was my fault and a limit of your searching alg.




include "mytpe.bmx"

local t:Mytype = new mytype
t.| -> use intellisense



If you mentioned your file was in a parent directory, I would of told you that... I just saw the 'Include "mytype.bmx"' statement, which suggests, if was in the same folder! ;) Ya little tinker! :)

I usually have a top-level build file, and everything else falls under it... Like I said in the link, its based on how I code... Will look at includes as soon as I can! ;)

Dabz


Dabhand(Posted 2010) [#12]
Version 1.1 released.

See the version log for details! :)

Dabz


Dabhand(Posted 2010) [#13]
Version 1.2 released.

This should sort out johnnyfreak's little problem above! :)

Dabz


Dabhand(Posted 2010) [#14]
Version 1.3 released, mostly changes recommended by therevills!

Dabz


therevills(Posted 2010) [#15]
mostly changes recommended by therevills!


Ill keep them coming too :P

If any one hasnt tried this... you should :)

Having some basic auto-complete features in the standard MaxIDE is great!


Dabhand(Posted 2010) [#16]
There was a small bug in version 1.3, which is fixed, but I've kept the version number the same as it only needed one line of code to fix!

So if you downloaded 1.3 before this post, redownload it and jobs a good'un! :)

Dabz


slenkar(Posted 2010) [#17]
thanks dabz,
cheeky request:

is there any chance of having the option for the autocomplete thing work without having to press f8?
i use other IDE's where autocomplete pops up as soon as you type anything and it seems to work.

people who dont like it that way could turn it off