using ultraedit

Miscellaneous Forums/General Discussion/using ultraedit

I understand it works ok with Blitz3D. Is there a way of getting it working flawlessly with Blitzmax? For example catching debugger output and showing functions?

If not, then what other ide choices apart from Blide? Been kind of totally spoiled by Visual Studio ide...

In fact it wouldn't be possible to get vc's ide working would it?

I want to make Code::Blocks work with it, but way too much work to do, I back to MaxIDE coz I carry it with my USB ThumbDrive.

Yeah. I couldn't use Blide because it for some reason unknown to me, wiped my main source file. Thats not something I can trust again.

I have also been looking at context - what do people think of this for blitzmax?

Blide wipes soure....that's pretty horible...

A better IDE like Dev-C++/Code::Blocks will be good tho.

The thing that would put me off using things like ConText or UltraEdit would be the lack of a debugger. They worked okay for B3D because it had it's own debugger, but I can't see them being very practical for Max.

Now, if Max had a standalone debugger ... ;-)

I give up. I can't even use the community edition - I just tried the blitzmax community edition and it loads my source with a weird squiggle at the top left (I use courier new and nonstandard chars to comment with).

So, currently only blide and the default ide load my source, and as blide managed to crash and lose my source, I'm stuck with the default ide. Thank goodness it works, eh?

I wrote a tutorial on using UE with BMax

http://www.eiksoft.com/uindex.htm

protean 13 beta was bmax compatable wasnt it?

Not much. I own the full version of it...

@Eikon, thanks a lot! Looks very useful - will have to follow that soon.

Hi Eikon, is the wordlist generated automatically or will we just add words that are missing manually?

Well isnt the full version 14, which isnt Bmax compatable. Im specificaly talking NOT about the full version, but rather 13 beta.
I know the final isnt Bmax compatable, cos if you go to the web for Protean, Mike (I think) says he has taken all the Bmax stuff out of version 14. But I definatly used one of the betas with BMax

Hi OEJ,
That wordlist was provided to me by someone on this site (can't remember who atm), if there are new commands in 1.20, you will have to manually add them from the doc\bmxmods\commands.txt file.

Thanks eikon. I gave the whole thing a good try but ultimately its still not sufficient enough an improvement over the default IDE to use it :)

I'm with you on that one, stay tuned for HydraMax ;)

Tell me its identical to the visual studio IDE complete with side bars that fold away automatically when the mouse isn't hovering over them :)

Not currently, but that's a good idea which I have added to my 2do list. Here's a screenshot if you haven't seen it yet.

hydra1.png

Its fairly cuddly for an ide really :) I don't think it'll tempt me away from the default one though :)

I don't use Blide cause it needs this dumb ms framework.
Also it looks overloaded with visual eyecandy.

For most cases I stick to the bmx ce which is fine for me.

Blide is still too beta for me. Every new version introduces a problem and it is "non standard" in its way of working so much so that I am having some trouble using it. It seems good though.

OEJ - I got UE setup with Bmax in a way that when you click compile in UE it automatically opens the source in the default IDE and compiles it there (so you still get the debugger). Not perfect but it works surprisingly smoothly.

I also started to look at integrating the debugger properly, but time, lack of documentation and other stuff got in the way. Needless to say, my solution mentioned above works well enough.

Jack, Blide gets better at each realese, and if you ask for a certain feature, or question the way it does somthing ziggy is very quick at fixing it.

I didnt like it much, haveing been spoilt by protean, but I would say that if Ziggy keeps up the good work it will surpase Protean.

I don't doubt that it will - but today it lost me my source code and thats a terror you don't get over easily.

That IS a reason not to use it yes Jack. Ive never had those sort of problems with it.(Im not saying its perfect like), But I admit if Protean went back into development I would prefer that.

Yes I liked protean, but the author has abandoned it and it is not possible to develop it further because it is based on a very specific build of compona syntax box, which is not legally obtainable any more.

In short if the author doesn't do more with it, we can't either - even with the source.

IDE wise, blitzmax is a little grim, but its not a showstopper.

I must admit I use the community IDE, but everytime Ziggy realises a new BLide, I download it and spend a couple of hours trying to find problems with it, (Which in my opinion Ziggy fixes very quickly). Because even though I dont use it, he has put a lot of work into it, and I think he deserves at the least our help in finding problems withit. And it is getting better and better each time. And so soon I probably will move over to it.
(My fave IDE is JaPbe. But well thats not Max commpatible is it)

I'm using ultra edit as well. I recently updated the wordfile for 1.20 and I changed the way the function list gets filled. If you want to I can post it here. (i'm at work now, so can do it tonight)

That would be nice, Wiebo

Here is my 1.20 wordfile:

/L12"BMax 1.20" NoCase Line Comment = ' Block File Extensions = BMX
/Delimiters = ~!@%^&*()-+=|\/{}[]:;"'<> ,	.?
/Function String = "%[ ^t]++Function*("
/Function String 1 = "%[ ^t]++Type*"
/Function String 2 = "%[ ^t]++Method*"
/Open Brace Strings =  "(" "["
/Close Brace Strings = ")" "]"
/Indent Strings = "For" "If" "Then" "Select" "Select Case" "While" "Else"
/Unindent Strings = "Next" "End If" "EndIf" "End Select" "EndSelect" "Wend" "Else"
/Open Fold Strings = "For" "While" "Repeat" "Rem" "Function" "Select" "Select Case" "Method" "Type"
/Close Fold Strings = "Next" "Wend" "Until" "Forever" "EndRem" "End Rem" "EndFunction" "End Function" "End Select" "EndMethod" "End Method" "EndType" "End Type"
/C1"Functions"
ACos
ASin
ATan2
ATan
Abs
Abstract
ActivateGadget
ActivateWindow
ActiveGadget
AddGadgetItem
AddHook
AddTextAreaText
AddTreeViewNode
AllocChannel
AllocHookId
And
AppArgs
AppDir
AppFile
AppSuspended
AppTerminate
AppTitle
Asc
Assert
AutoImageFlags
AutoMidHandle
BankBuf
BankCapacity
BankSize
BigEndianStream
Bin
BindSocket
ButtonState
Byte
CanvasGraphics
Case
CasedFileName
Catch
Ceil
ChangeDir
ChannelPlaying
CheckMenu
Chr
ClearGadgetItems
ClearList
ClientHeight
ClientWidth
CloseDir
CloseFile
CloseGNetHost
CloseGNetObject
CloseGNetPeer
CloseGraphics
CloseSocket
CloseStream
Cls
CollapseTreeViewNode
CollideImage
CollideRect
Confirm
ConnectSocket
Const
Continue
ConvertPixmap
CopyBank
CopyBytes
CopyPixmap
CopyStream
Cos
Cosh
CountGadgetItems
CountGraphicsModes
CountList
CountTreeViewNodes
CreateAudioSample
CreateBank
CreateBankStream
CreateButton
CreateCanvas
CreateComboBox
CreateDir
CreateEvent
CreateFile
CreateGNetHost
CreateGNetMessage
CreateGNetObject
CreateGraphics
CreateHTMLView
CreateImage
CreateLabel
CreateList
CreateListBox
CreateMenu
CreatePanel
CreatePixmap
CreateProgBar
CreateRamStream
CreateSlider
CreateSocketStream
CreateStaticAudioSample
CreateStaticBank
CreateStaticPixmap
CreateTCPSocket
CreateTabber
CreateTextArea
CreateTextField
CreateTimer
CreateToolBar
CreateTreeView
CreateUDPSocket
CreateWindow
CueSound
CurrentDate
CurrentDir
CurrentEvent
CurrentTime
D3D7Max2DDriver
DebugLog
DebugStop
DefData
Default
Delay
Delete
DeleteDir
DeleteFile
DeselectGadgetItem
Desktop
DisableGadget
DisableGadgetItem
DisableMenu
DottedIP
Double
DrawImage
DrawImageRect
DrawLine
DrawOval
DrawPixmap
DrawPoly
DrawRect
DrawText
EachIn
Else
ElseIf
EmitEvent
EmitEventHook
EnableGadget
EnableGadgetItem
EnableMenu
End
EndExtern
EndFunction
EndGraphics
EndIf
EndMethod
EndRem
EndSelect
EndTry
EndType
EndWhile
Eof
EventData
EventExtra
EventID
EventMods
EventSource
EventSourceHandle
EventText
EventX
EventY
Exit
Exp
ExpandTreeViewNode
Extends
Extern
ExtractDir
ExtractExt
False
Field
FileMode
FileSize
FileTime
FileType
Final
Flip
Float
Floor
FlushKeys
FlushMouse
FlushStream
FontName
FontSize
FontStyle
For
Forever
FormatTextAreaText
Framework
FreeGadget
FreeMenu
FreeTreeViewNode
Function
GCCollect
GCMemAlloced
GCSetMode
GLAdjustTexSize
GLDrawText
GLGraphics
GLGraphicsDriver
GLMax2DDriver
GLTexFromPixmap
GNetAccept
GNetConnect
GNetListen
GNetMessageObject
GNetMessages
GNetObjectLocal
GNetObjectRemote
GNetObjectState
GNetObjects
GNetPeerTCPSocket
GNetPeerUDPSocket
GNetPeers
GNetSync
GNetTotalBytesIn
GNetTotalBytesOut
GadgetCopy
GadgetCut
GadgetDisabled
GadgetGroup
GadgetHeight
GadgetHidden
GadgetItemExtra
GadgetItemFlags
GadgetItemIcon
GadgetItemText
GadgetPaste
GadgetPrint
GadgetWidth
GadgetX
GadgetY
GetAlpha
GetBlend
GetChar
GetClsColor
GetColor
GetGNetFloat
GetGNetInt
GetGNetString
GetGNetTarget
GetGraphicsMode
GetHandle
GetImageFont
GetLineWidth
GetMaskColor
GetOrigin
GetRotation
GetScale
GetViewport
Global
Goto
GrabImage
GrabPixmap
Graphics
GraphicsDepth
GraphicsFlags
GraphicsHeight
GraphicsHertz
GraphicsModeExists
GraphicsModes
GraphicsWidth
Hex
HideGadget
HideMouse
HostIp
HostIps
HostName
HtmlViewBack
HtmlViewCurrentURL
HtmlViewForward
HtmlViewGo
HtmlViewRun
HtmlViewStatus
If
ImageHeight
ImageWidth
ImagesCollide2
ImagesCollide
Import
Incbin
IncbinLen
IncbinPtr
Include
Input
InsertGadgetItem
InsertTreeViewNode
Instr
Int
IsNan
IsInf
JoyAxisCaps
JoyButtonCaps
JoyCount
JoyDown
JoyHat
JoyName
JoyPitch
JoyR
JoyRoll
JoyU
JoyV
JoyWheel
JoyX
JoyY
JoyYaw
JoyZ
KeyDown
KeyHit
LSet
LaunchDir
Left
Len
ListAddFirst
ListAddLast
ListContains
ListFindLink
ListFromArray
ListIsEmpty
ListRemove
ListToArray
LittleEndianStream
LoadAnimImage
LoadAudioSample
LoadBank
LoadByteArray
LoadDir
LoadGuiFont
LoadIconStrip
LoadImage
LoadImageFont
LoadPixmap
LoadPixmapPNG
LoadSound
LoadString
Local
LockImage
LockTextArea
Log10
Log
Long
LongBin
LongHex
Lower
MaskPixmap
Max
MaximizeWindow
MemAlloc
MemClear
MemCopy
MemExtend
MemFree
MemMove
MenuChecked
MenuEnabled
MenuText
Method
Mid
MidHandleImage
MilliSecs
Min
MinimizeWindow
Mod
ModifyGadgetItem
ModifyTreeViewNode
Module
ModuleInfo
MouseDown
MouseHit
MouseX
MouseY
MouseZ
MoveMouse
New
Next
NextFile
Not
Notify
Null
Object
OnEnd
OpenFile
OpenStream
OpenURL
Or
PauseChannel
PeekByte
PeekDouble
PeekEvent
PeekFloat
PeekInt
PeekLong
PeekShort
Pi
PixmapFormat
PixmapHeight
PixmapPitch
PixmapPixelPtr
PixmapWidth
PixmapWindow
PlaySound
Plot
PokeByte
PokeDouble
PokeFloat
PokeInt
PokeLong
PokeShort
PollEvent
PollSystem
PopupWindowMenu
PostEvent
Print
Private
Proceed
Ptr
Public
QueryGadget
RSet
Rand
ReadBank
ReadByte
ReadData
ReadDir
ReadDouble
ReadFile
ReadFloat
ReadLine
ReadLong
ReadPixel
ReadShort
ReadStdin
ReadStream
ReadString
ReadInt
RealPath
RedrawGadget
Release
Rem
RemoveGadgetItem
RemoveHook
RemoveLink
RenameFile
Repeat
Replace
RequestColor
RequestDir
RequestFile
RequestFont
RequestedBlue
RequestedGreen
RequestedRed
ResetCollisions
ResizeBank
ResizePixmap
RestoreData
RestoreWindow
ResumeChannel
Return
ReverseList
Right
Rnd
RndDouble
RndFloat
RndSeed
RunHooks
RuntimeError
Sar
SaveBank
SaveByteArray
SavePixmapPNG
SaveString
ScriptEngine
SeedRnd
SeekStream
Select
SelectGadgetItem
SelectTextAreaText
SelectTreeViewNode
SelectedGadgetItem
SelectedGadgetItems
SelectedTreeViewNode
Self
SendGNetMessage
SetAlpha
SetBlend
SetButtonState
SetChannelDepth
SetChannelPan
SetChannelRate
SetChannelVolume
SetClsColor
SetColor
SetFileMode
SetGNetFloat
SetGNetInt
SetGNetString
SetGNetTarget
SetGadgetAlpha
SetGadgetColor
SetGadgetFilter
SetGadgetFont
SetGadgetHotKey
SetGadgetIconStrip
SetGadgetLayout
SetGadgetShape
SetGadgetTarget
SetGadgetText
SetGadgetTextColor
SetGraphics
SetGraphicsDriver
SetHandle
SetHotKeyEvent
SetImageFont
SetImageHandle
SetLineWidth
SetMaskColor
SetMenuText
SetMinWindowSize
SetOrigin
SetPanelColor
SetPanelPixmap
SetPointer
SetRotation
SetScale
SetSliderRange
SetSliderValue
SetStatusText
SetTextAreaColor
SetTextAreaFont
SetTextAreaTabs
SetTextAreaText
SetToolBarTips
SetTransform
SetViewport
Sgn
Shl
Short
ShowGadget
ShowMouse
Shr
Sin
Sinh
SizeOf
SliderValue
SocketAccept
SocketConnected
SocketListen
SocketLocalIP
SocketLocalPort
SocketReadAvail
SocketRemoteIP
SocketRemotePort
SocketStreamSocket
SortList
Sqr
StandardIOStream
Step
StopChannel
StopTimer
StreamPos
StreamSize
Strict
String
StripAll
StripDir
StripExt
StripSlash
Super
SuperStrict
SwapLists
TAudioSample
TAudioSampleLoader
TBank
TBankStream
TCStream
TChannel
TEvent
TGadget
TIO
TLink
TList
TListEnum
TPixmap
TPixmapLoader
TSound
TStream
TStreamException
TStreamFactory
TStreamReadException
TStreamWrapper
TStreamWriteException
Tan
Tanh
TextAreaChar
TextAreaCursor
TextAreaLen
TextAreaLine
TextAreaSelLen
TextAreaText
TextFieldText
TextHeight
TextWidth
Then
Throw
TileImage
TimerTicks
To
ToggleGadgetItem
TreeViewRoot
Trim
True
Try
Type
UncheckMenu
UnlockImage
UnlockTextArea
Until
UpdateProgBar
UpdateWindowMenu
Upper
Var
Varptr
WaitChar
WaitEvent
WaitKey
WaitMouse
WaitSystem
WaitTimer
Wend
While
WindowMaximized
WindowMenu
WindowMinimized
WriteBank
WriteByte
WriteDouble
WriteFile
WriteFloat
WriteInt
WriteLine
WriteLong
WritePixel
WriteShort
WriteStderr
WriteStdout
WriteStream
WriteString
XFlipPixmap
YFlipPixmap
compress2
compress
uncompress
/C2"Constants"
Not Null Pi True False
AXIS_X AXIS_Y AXIS_Z ALPHABLEND
BUTTON_PUSH BUTTON_CHECKBOX BUTTON_RADIO BUTTON_OK BUTTON_CANCEL
BBQID_WIN32HWND BBQID_WIN32CLIENTHWND BBQID_WIN32HFONT BBQID_WIN32HBITMAP BBQID_WIN32HIMAGELIST BBQID_WIN32DDGRAPHICSSURFACE BBQID_WIN32DDPRIMARYSURFACE
DYNAMICIMAGE
EVENT_GADGETACTION EVENT_GADGETPAINT EVENT_MOUSEDOWN EVENT_MOUSEUP EVENT_MOUSEMOVE EVENT_MOUSEWHEEL EVENT_MOUSEENTER EVENT_MOUSELEAVE EVENT_KEYDOWN
EVENT_KEYUP EVENT_KEYCHAR EVENT_WINDOWMOVE EVENT_WINDOWSIZE EVENT_WINDOWCLOSE EVENT_WINDOWACTIVATE EVENT_WINDOWACCEPT EVENT_MENUACTION
EDGE_CENTERED EDGE_ALIGNED EDGE_RELATIVE
FILTEREDIMAGE
GADGETITEM_NORMAL GADGETITEM_DEFAUL GADGETITEM_TOGGLES
HTMLVIEW_NOCONTEXTMENU HTMLVIEW_NONAVIGATE
KEY_MOUSELEFT KEY_MOUSERIGHT KEY_MOUSEMIDDLE KEY_BACKSPACE KEY_TAB KEY_CLEAR KEY_RETURN KEY_ENTER KEY_SHIFT KEY_CONTROL KEY_ALT KEY_PAUSE KEY_CAPSLOCK KEY_ESCAPE KEY_SPACE KEY_PAGEUP KEY_PAGEDOWN KEY_END KEY_HOME KEY_LEFT KEY_UP KEY_RIGHT KEY_DOWN KEY_SELECT KEY_PRINT KEY_EXECUTE KEY_SCREEN KEY_INSERT KEY_DELETE KEY_HELP KEY_0 KEY_1 KEY_2 KEY_3 KEY_4 KEY_5 KEY_6 KEY_7 KEY_8 KEY_9 KEY_A KEY_B KEY_C KEY_D KEY_E KEY_F KEY_G KEY_H KEY_I KEY_J KEY_K KEY_L KEY_M KEY_N KEY_O KEY_P KEY_Q KEY_R KEY_S KEY_T KEY_U KEY_V KEY_W KEY_X KEY_Y KEY_Z KEY_LSYS KEY_RSYS KEY_START KEY_NUM0 KEY_NUM1 KEY_NUM2 KEY_NUM3 KEY_NUM4 KEY_NUM5 KEY_NUM6 KEY_NUM7 KEY_NUM8 KEY_NUM9 KEY_NUMMULTIPLY KEY_NUMADD KEY_NUMSLASH KEY_NUMSUBTRACT
KEY_NUMDECIMAL KEY_NUMDIVIDE KEY_F1 KEY_F2 KEY_F3 KEY_F4 KEY_F5 KEY_F6 KEY_F7 KEY_F8 KEY_F9 KEY_F10 KEY_F11 KEY_F12 KEY_NUMLOCK KEY_SCROLL KEY_LSHIFT KEY_RSHIFT KEY_LCONTROL KEY_RCONTROL KEY_LALT KEY_RALT KEY_BROWSER_BACK KEY_BROWSER_FORWARD KEY_BROWSER_REFRESH KEY_BROWSER_STOP KEY_BROWSER_SEARCH KEY_BROWSER_FAVORITES KEY_BROWSER_HOME KEY_VOLUME_MUTE KEY_VOLUME_DOWN KEY_VOLUME_UP KEY_MEDIA_NEXT_TRACK KEY_MEDIA_PREV_TRACK KEY_MEDIA_STOP KEY_MEDIA_PLAY_PAUSE KEY_LAUNCH_MAIL KEY_LAUNCH_MEDIA_SELECT KEY_LAUNCH_APP KEY_LAUNCH_APP KEY_TILDE KEY_MINUS KEY_EQUALS KEY_OPENBRACKET KEY_CLOSEBRACKET KEY_BACKSLASH KEY_SEMICOLON KEY_QUOTES KEY_COMMA KEY_PERIOD KEY_SLASH
LABEL_FRAME LABEL_SUNKENFRAME LABEL_SEPARATOR LABEL_CENTER LABEL_RIGHT
LIGHTBLEND MIPMAPPEDIMAGE MASKEDIMAGE MASKBLEND SHADEBLEND SOLIDBLEND
MODIFIER_SHIFT MODIFIER_CONTROL MODIFIER_OPTION MODIFIER_SYSTEM MODIFIER_COMMAND
PANEL_BORDER PANEL_ACTIVE PANEL_GROUP
PANELPIXMAP_TILE PANELPIXMAP_CENTER PANELPIXMAP_FIT PANELPIXMAP_STRETCH
POINTER_DEFAULT POINTER_ARROW POINTER_IBEAM POINTER_WAIT POINTER_CROSS POINTER_UPARROW POINTER_SIZENWSE POINTER_SIZENESW POINTER_SIZEWE POINTER_SIZENS POINTER_SIZEALL
POINTER_NO POINTER_HAND POINTER_APPSTARTING POINTER_HELP
SLIDER_HORIZONTAL SLIDER_VERTICAL SLIDER_SCROLLBAR SLIDER_TRACKBAR SLIDER_STEPPER SOLIDBLEND
TEXTAREA_WORDWRAP TEXTAREA_READONLY TEXTFIELD_PASSWORD
WINDOW_TITLEBAR WINDOW_RESIZABLE WINDOW_MENU WINDOW_STATUS WINDOW_TOOL WINDOW_CLIENTCOORDS WINDOW_HIDDEN WINDOW_ACCEPTFILES
/C3"OpenGL"
/C4"Operators"
+
-
=
\
*
&
<
>
^
And
Mod
Not
Or
Xor
/C5"Compiler Directives"
?Win32 ?Linux ?MacOS ?PPC ?x86 ?LittleEndian ?BigEndian ?Debug ?


Oh, I do not sort the function list alphabetically, so methods and function in the type are displayed underneath the type entry.

oh, and sorry for the horizontal width =]