Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Syntax Coloring for CodeBrowser


  • Please log in to reply
No replies to this topic
MG
  • Members
  • 5 posts
  • Last active: Aug 08 2005 09:47 AM
  • Joined: 20 Jul 2005
Hi,

I'm trying to find me the editor, which suits me best for editing AHK-scripts. One which seems to be quite nice is CodeBrowser, because it allows folding of code.

In order to have syntax highlighting I made the following additions to the languages.cb-config and preferences.cb-config files:

languages.cb-config:
//[c]
//[of]:	AutoHotKey
def AutoHotKey

	colorizer = generic
	line-comment = ;
	open-comment = /*
	close-comment = */
	string-delimiter = "
	escape-char = `
	ignore-case = true

	words-1 = %
		#AllowSameLineComments #ClipboardTimeout #CommentFlag #ErrorStdOut %
		#EscapeChar #HotkeyInterval #HotkeyModIfierTimeout #Hotstring #Include %
		#IncludeAgain #InstallKeybdHook #InstallMouseHook #KeyHistory #MaxHotkeysPerInterval %
		#MaxMem #MaxThreads #MaxThreadsBuffer #MaxThreadsPerHotkey #NoTrayIcon %
		#Persistent #SingleInstance #UseHook #WinActivateForce %
		AutoTrim BlockInput Break ClipWait Continue Control ControlClick ControlFocus %
		ControlGet ControlGetFocus ControlGetPos ControlGetText ControlMove ControlSend %
		ControlSendRaw ControlSetText CoordMode DetectHiddenText DetectHiddenWindows %
		DllCall Drive DriveGet DriveSpaceFree Edit Else EndRepeat EnvAdd EnvDiv EnvMult %
		EnvSet EnvSub EnvUpdate Exit Exit ExitApp ExitApp FileAppend FileCopy FileCopyDir %
		FileCreateDir FileCreateShortcut FileDelete FileGetAttrib FileGetShortcut FileGetSize %
		FileGetTime FileGetVersion FileInstall FileMove FileMoveDir FileRead FileReadLine %
		FileRecycle FileRecycleEmpty FileRemoveDir FileSelectFile FileSelectFolder FileSetAttrib %
		FileSetTime FormatTime GetKeyState Gosub Goto GroupActivate GroupAdd GroupClose %
		GroupDeactivate Gui GuiControl GuiControlGet HideAutoItWin Hotkey If IfEqual IfExist %
		IfGreater IfGreaterOrEqual IfInString IfLess IfLessOrEqual IfMsgBox IfNotEqual IfNotExist %
		IfNotInString IfWinActive IfWinExist IfWinNotActive IfWinNotExist ImageSearch IniDelete %
		IniRead IniWrite Input InputBox KeyHistory KeyWait ListHotkeys ListLines ListVars %
		Loop Menu MouseClick MouseClickDrag MouseGetPos MouseMove MsgBox OnExit %
		OutputDebug Pause PixelGetColor Pixelsearch PostMessage Process Progress Random %
		RegDelete RegRead RegWrite Reload Repeat Return Return Run RunAs RunWait Send %
		SendMessage SendRaw SetBatchLines SetCapsLockState SetControlDelay %
		SetDefaultMouseSpeed SetEnv SetFormat SetKeyDelay SetMouseDelay SetNumLockState %
		SetScrollLockState SetStoreCapslockMode SetTimer SetTitleMatchMode SetWinDelay %
		SetWorkingDir Shutdown Sleep Sort SoundBeep SoundGet SoundGetWaveVolume %
		SoundPlay SoundSet SoundSetWaveVolume SplashImage SplashTextOff SplashTextOn %
		SplitPath StatusBarGetText StatusBarWait StringCaseSense StringGetPos StringLeft StringLen %
		StringLower StringMid StringReplace StringRight StringSplit StringTrimLeft StringTrimRight %
		StringUpper Suspend SysGet Thread ToolTip Transform TrayTip URLDownloadToFile %
		VarSetCapcity WinActivate WinActivateBottom WinClose WinGet WinGetActiveStats %
		WinGetActiveTitle WinGetClass WinGetPos WinGetText WinGetTitle WinHide WinKill %
		WinMaximize WinMenuSelectItem WinMinimize WinMinimizeAll WinMinimizeAllUndo WinMove %
		WinRestore WinSet WinSetTitle WinShow WinWait WinWaitActive WinWaitClose %
		WinWaitNotActive
		
	words-2 = %
		PIXEL MOUSE SCREEN RELATIVE RGB ahk_id ahk_pid ahk_class ahk_group Between Contains %
		In Integer Float Number Digit Xdigit Alpha Upper Lower Alnum Time Date AlwaysOnTop Topmost %
		Top Bottom Transparent TransColor Redraw Region ID IDLast ProcessName MinMax ControlList %
		Count List Capacity StatusCD Eject Lock Unlock Label FileSystem Label SetLabel Serial Type %
		Status static global local ByRef Seconds Minutes Hours Days Read Parse Logoff Close Error %
		Single Tray Add Rename Check UnCheck ToggleCheck Enable Disable ToggleEnable Default %
		NoDefault Standard NoStandard Color Delete DeleteAll Icon NoIcon Tip Click Show MainWindow %
		NoMainWindow UseErrorLevel Font Resize Owner Submit NoHide Minimize Maximize Restore %
		NoActivate NA Cancel Destroy Center Text Picture Pic GroupBox Button Checkbox Radio %
		DropDownList DDL ComboBox ListBox ListView DateTime MonthCal UpDown Slider Tab TabStop %
		Section AltSubmit Wrap HScroll VScroll Border Top Bottom Buttons Number Uppercase Lowercase %
		Limit Password Multi WantReturn Group Background Theme Caption Delimiter MinimizeBox %
		MaximizeBox SysMenu ToolWindow Flash Style ExStyle Check3 Checked CheckedGray ReadOnly %
		Password Hidden Left Right Center NoTab Section Move Focus Hide Choose ChooseString Text Pos %
		Enabled Disabled Visible LastFound AltTab ShiftAltTab AltTabMenu AltTabAndMenu %
		AltTabMenuDismiss Unicode Asc Chr Deref Mod Pow Exp Sqrt Log Ln Round Ceil Floor Abs Sin Cos %
		Tan ASin ACos ATan BitNot BitAnd BitOr BitXOr BitShiftLeft BitShiftRight Yes No Ok Cancel Abort %
		Retry Ignore HKEY_LOCAL_MACHINE HKEY_USERS HKEY_CURRENT_USER HKEY_CLASSES_ROOT %
		HKEY_CURRENT_CONFIG HKLM HKU HKCU HKCR HKCC REG_SZ REG_EXPAND_SZ REG_MULTI_SZ %
		REG_DWORD REG_BINARY
		
	words-3 = %
		A_ A_AhkVersion A_AutoTrim A_BatchLines A_CaretX A_CaretY A_ComputerName %
		A_ControlDelay A_Cursor A_DD A_DDD A_DDDD A_DefaultMouseSpeed A_Desktop %
		A_DesktopCommon A_DetectHiddenText A_DetectHiddenWindows A_EndChar A_ExitReason %
		A_FormatFloat A_FormatInteger A_Gui A_GuiControl A_EventInfo A_GuiX A_GuiY A_GuiEvent %
		A_GuiControlEvent A_GuiHeight A_GuiWidth A_Hour A_IconFile A_IconHidden A_IconNumber %
		A_IconTip A_Index A_IPAddress1 A_IPAddress2 A_IPAddress3 A_IPAddress4 A_ISAdmin %
		A_IsCompiled A_IsSuspended A_KeyDelay A_Language A_LineNumber A_LineFile A_LoopField %
		A_LoopFileAttrib A_LoopFileDir A_LoopFileExt A_LoopFileFullPath A_LoopFileLongPath %
		A_LoopFileName A_LoopFileShortName A_LoopFileShortPath A_LoopFileSize A_LoopFileSizeKB %
		A_LoopFileSizeMB A_LoopFileTimeAccessed A_LoopFileTimeCreated A_LoopFileTimeModified %
		A_LoopReadLine A_LoopRegKey A_LoopRegName A_LoopRegSubkey A_LoopRegTimeModified %
		A_LoopRegType A_MDAY A_Min A_MM A_MMM A_MMMM A_MON A_MouseDelay A_MyDocuments %
		A_Now A_NowUTC A_NumBatchLines A_OSType A_OSVersion A_PriorHotkey A_ProgramFiles %
		A_Programs A_ProgramsCommon A_ScreenHeight A_ScreenWidth A_ScriptDir A_ScriptFullPath %
		A_ScriptName A_Sec A_Space A_StartMenu A_StartMenuCommon A_Startup A_StartupCommon %
		A_StringCaseSense A_Tab A_ThisHotkey A_ThisMenu A_ThisMenuItem A_ThisMenuItemPos %
		A_TickCount A_TimeIdle A_TimeIdlePhysical A_TimeSincePriorHotkey A_TimeSinceThisHotkey %
		A_TitleMatchMode A_TitleMatchModeSpeed A_UserName A_WDay A_WinDelay A_WinDir %
		A_WorkingDir A_YDay A_YEAR A_YWeek A_YYYY Clipboard ErrorLevel True False
		
	words-4 = %
		{^} {+} {!} {#} {~} {$} {`} Shift {Shift} LShift {LShift} RShift {RShift} Alt {Alt} LAlt {LAlt} %
		RAlt {RAlt} Control {Control} LControl {LControl} RControl {RControl} Ctrl {Ctrl} LCtrl {LCtrl} %
		RCtrl {RCtrl} LWin {LWin} RWin {RWin} AppsKey {AppsKey} AltDown {AltDown} AltUp {AltUp} %
		ShiftDown {ShiftDown} ShiftUp {ShiftUp} CtrlDown {CtrlDown} CtrlUp {CtrlUp} %
		LWinDown {LWinDown} RWinDown {RWinDown} LButton {LButton} RButton {RButton} %
		MButton {MButton} WheelUp {WheelUp} WheelDown {WheelDown} XButton1 {XButton1} %
		XButton2 {XButton2} Joy1 {Joy1} Joy2 {Joy2} Joy3 {Joy3} Joy4 {Joy4} Joy5 {Joy5} Joy6 {Joy6} %
		Joy7 {Joy7} Joy8 {Joy8} Joy9 {Joy9} Joy10 {Joy10} Joy11 {Joy11} Joy12 {Joy12} %
		Joy13 {Joy13} Joy14 {Joy14} Joy15 {Joy15} Joy16 {Joy16} Joy17 {Joy17} Joy18 {Joy18} %
		Joy19 {Joy19} Joy20 {Joy20} Joy21 {Joy21} Joy22 {Joy22} Joy23 {Joy23} Joy24 {Joy24} %
		Joy25 {Joy25} Joy26 {Joy26} Joy27 {Joy27} Joy28 {Joy28} Joy29 {Joy29} Joy30 {Joy30} %
		Joy31 {Joy31} Joy32 {Joy32} JoyX {JoyX} JoyY {JoyY} JoyZ {JoyZ} JoyR {JoyR} JoyU {JoyU} %
		JoyV {JoyV} JoyPOV {JoyPOV} JoyName {JoyName} JoyButtons {JoyButtons} %
		JoyAxes {JoyAxes} JoyInfo {JoyInfo} Space {Space} Tab {Tab} Enter {Enter} Escape {Escape} %
		Esc {Esc} BackSpace {BackSpace} BS {BS} Delete {Delete} Del {Del} Insert {Insert} Ins {Ins} %
		PGUP {PGUP} PGDN {PGDN} Home {Home} End {End} Up {Up} Down {Down} Left {Left} %
		Right {Right} PrintScreen {PrintScreen} CtrlBreak {CtrlBreak} Pause {Pause} %
		ScrollLock {ScrollLock} CapsLock {CapsLock} NumLock {NumLock} Numpad0 {Numpad0} %
		Numpad1 {Numpad1} Numpad2 {Numpad2} Numpad3 {Numpad3} Numpad4 {Numpad4} %
		Numpad5 {Numpad5} Numpad6 {Numpad6} Numpad7 {Numpad7} Numpad8 {Numpad8} %
		Numpad9 {Numpad9} NumpadMult {NumpadMult} NumpadAdd {NumpadAdd} %
		NumpadSub {NumpadSub} NumpadDiv {NumpadDiv} NumpadDot {NumpadDot} %
		NumpadDel {NumpadDel} NumpadIns {NumpadIns} NumpadClear {NumpadClear} %
		NumpadUp {NumpadUp} NumpadDown {NumpadDown} NumpadLeft {NumpadLeft} %
		NumpadRight {NumpadRight} NumpadHome {NumpadHome} NumpadEnd {NumpadEnd} %
		NumpadPgup {NumpadPgup} NumpadPgdn {NumpadPgdn} NumpadEnter {NumpadEnter} %
		F1 {F1} F2 {F2} F3 {F3} F4 {F4} F5 {F5} F6 {F6} F7 {F7} F8 {F8} F9 {F9} F10 {F10} F11 {F11} %
		F12 {F12} F13 {F13} F14 {F14} F15 {F15} F16 {F16} F17 {F17} F18 {F18} F19 {F19} F20 {F20} %
		F21 {F21} F22 {F22} F23 {F23} F24 {F24} Browser_Back {Browser_Back} %
		Browser_Forward {Browser_Forward} Browser_Refresh {Browser_Refresh} %
		Browser_Stop {Browser_Stop} Browser_Search {Browser_Search} %
		Browser_Favorites {Browser_Favorites} Browser_Home {Browser_Home} %
		Volume_Mute {Volume_Mute} Volume_Down {Volume_Down} Volume_Up {Volume_Up} %
		Media_Next {Media_Next} Media_Prev {Media_Prev} Media_Stop {Media_Stop} %
		Media_Play_Pause {Media_Play_Pause} Launch_Mail {Launch_Mail} Launch_Media {Launch_Media} %
		Launch_App1 {Launch_App1} Launch_App2 {Launch_App2}
		
end
//[cf]
[/list]

preferences.cb-config:

//[c]
//[of]:	AutoHotKey
def AHK

	patterns = *.ahk
	language = AutoHotKey
	edit = tab4
	display = default

	layout = 0
	tree-view = true
end
//[cf]

So you just need to copy and paste these snippets to the corresponding files.

Hope this helps somebody.

Cheers,

Matt