jaPBe - First Release
Posted: Mon Jul 07, 2003 12:19 pm
Edit: New Version:
http://caosandkin.bei.t-online.de/pureb ... .3.7.8.zip
What is jaPBe?
jaPBe (just another PureBasic editor) is an alternate Editor for PureBasic, which can everything what the original Editor can plus:
(Most of this things can be (de)activate in the preference! So look in it!)
(WARNING: Compile the Source only with 3.71 Beta 2 or higher!)
*FOLDING
jaPBe can fold. Foldmarks are automatic set for procedures and structures. When you want to create your own folds, use the ";{" and ";}" tags. (btw: ";{-" also create a bookmark).
The Fold-state (open/close) is saved with the sourcecode, so when you don't want to use it, ignore it.
*Better Text-Style
Dim test$(10) and NewList test$(10) are colored right and more style-possibilities, for example diffrent background for bookmarklines.
*Autocompletation
jaPBe has the possibility to list all possible completations of the current typed word. For example when you write #pb_window_, jaPBe shows you all the window-constants.
With Tab or Ctrl+Return you can insert the selected suggestion.
*Advanced Bookmark
The Bookmark-list are colored better. ;- and procedures have diffrent color styles, so you see better, if the bookmark procedure or not. Also you can set, that procedures also show you the parameterlist.
*AutoCase
jaPBe can format automatic all typed word. jaPBe search the complete text for words (and by the way, you can see the list in the Info-Panel on the right side). When you want to change the case, simple rightclick in the list or change the style in the editor and press F2.
*Better Tooltip
When the cursor is in a procedure, you can see a tooltip right from the cursor-position-display. Also the current parameter is highlighted. Also jaPBe knows all the Procedures that are declared or defined in the current file.
*FileList
jaPBe can save FileList, so you can open all files of a project very fast.
*Definition-Files
With Definition-Files you can tell jaPBe, that he know the name of Variables, Constants, Structures and Procedures. With this Definition-Files i told jaPBe all definied structures and pb-constants. Also you can add own tooltips for your own procedures in all files.
Look in the Definition-Directory
Note: At the moment jaPBe don't know all API-constants, because when you have to many definitions, the time for loading a sourcecode will increase. But when you want to activate it, rename the "ref-windows_long.txt.old" to "ref-windows_long.txt". Try it!
*Declare-Files
jaPBe can save automatic .declare-Files, which contain all defined procedures of the file.
When your file is named "test.pbi", the declaration is called "test.pbi.declare".
Also when you compile a file, automatic a "all.declare" is created, wich include automatic all declarations. So when you include the "all.declare", you don't must care about, in which order you write the procedures.
Note: All the files must be in the same directory, or all.declare will not found them.
Also when you use your own structures in the parameter-list of a procedure (like "Procedure test(test.ownstruc)") you must definied this structure, before you include the "all.declare".
*Multilangual
At the moment only English and "Deutsch" (German) exist. When you want to translate: Look in the Language-Directory and open one of this files and translate all the sentence and save it under a new name. Then jaPBe knows this languages. Change it in the Preference.
*Associate with .PB, .PBI and .PBDL
And the best: I don't touch the regestrie-entries of the original editor. .PB are then automatic open with jaPBe, but in the context-menu of the .pb-files you found the original editor (under open).
Note: You must press the associate-button in the preferences, or nothing will be changed.
*Bracehighlight in two diffrent ways.
*Mark Current Line
You can highlight the current line with a diffrent background.
*Automatic Indentation
Type a if-else-endif over more lines and you see, what i mean.
*Scrollmargin
The original editor only scrolles, when the cursor would scroll outside the edit. In jaPBe you can set a boarder, so you can see, where are you scrolling in.
*Better Undo
More steps are saved in the Undo-Buffer.
*Load/Save Block
You can save the current selection and you can load selections.
*Improved Find
It should now function more like other find-windows (replace first highlight the text, that should be replace.)
About Extended Chars (here a little copy of the documentation of scintella)
. Matches any character
\( This marks the start of a region for tagging a match.
\) This marks the end of a tagged region.
\n Where n is 1 through 9 refers to the first through ninth tagged region when replacing. For example, if the search string was Fred\([1-9]\)XXX and the replace string was Sam\1YYY, when applied to Fred2XXX this would generate Sam2YYY.
\< This matches the start of a word using Scintilla's definitions of words.
\> This matches the end of a word using Scintilla's definition of words.
\x This allows you to use a character x that would otherwise have a special meaning. For example, \[ would be interpreted as [ and not as the start of a character set.
[...] This indicates a set of characters, for example, [abc] means any of the characters a, b or c. You can also use ranges, for example [a-z] for any lower case character.
[^...] The complement of the characters in the set. For example, [^A-Za-z] means any character except an alphabetic character.
^ This matches the start of a line (unless used inside a set, see above).
$ This matches the end of a line.
* This matches 0 or more times. For example, Sa*m matches Sm, Sam, Saam, Saaam and so on.
+ This matches 1 or more times. For example, Sa+m matches Sam, Saam, Saaam and so on.
*Better Error-Support
When a error appear in a include, jaPBe try to highlight this line in the include.
*Infobox
Here you see the current state (compling,etc) and all error-messages and so on.
*"set as main file" and "compile file" (Compiler Options)
You can say jaPBe, that he should compile a diffrent file, when you start to compile the current file.
Set as main file will change all open ".pbi" (NOT ".pb"!), so that they will compile the current file.
This is usefull, when you have split you project in diffrent files. In the original editor you must switch to a subfile, change to the mainfile and f5, found a error, swicht in the subfile, edit, change back to main, f5 ,... On japbe you the the subfile, that he should compile the main-file.
*Advanced Ascii-Table
Try it out!
*PlugIns
jaPBe has the posibility to comunicate direct with plugins. So a plugin can get the current filename, the selection, the actual word, the current line and the complete text without saveing it on the hdd. Also the Plugin can open a file, create a new file with a new text and so on. For more, look in the Plugin-directory.
You find Plugins in the Tools-Menü.
Additonal Notes:
The Visual-Designer Plugin starts the Visual Designer. It gives you also the possible to redirect files, that should open the original editor, to jaPBe. But this only work, when you set the original editor to run once instance only!
Ok, i'm sure, that i forget something, so try it out!
http://caosandkin.bei.t-online.de/pureb ... .3.7.8.zip
What is jaPBe?
jaPBe (just another PureBasic editor) is an alternate Editor for PureBasic, which can everything what the original Editor can plus:
(Most of this things can be (de)activate in the preference! So look in it!)
(WARNING: Compile the Source only with 3.71 Beta 2 or higher!)
*FOLDING
jaPBe can fold. Foldmarks are automatic set for procedures and structures. When you want to create your own folds, use the ";{" and ";}" tags. (btw: ";{-" also create a bookmark).
The Fold-state (open/close) is saved with the sourcecode, so when you don't want to use it, ignore it.
*Better Text-Style
Dim test$(10) and NewList test$(10) are colored right and more style-possibilities, for example diffrent background for bookmarklines.
*Autocompletation
jaPBe has the possibility to list all possible completations of the current typed word. For example when you write #pb_window_, jaPBe shows you all the window-constants.
With Tab or Ctrl+Return you can insert the selected suggestion.
*Advanced Bookmark
The Bookmark-list are colored better. ;- and procedures have diffrent color styles, so you see better, if the bookmark procedure or not. Also you can set, that procedures also show you the parameterlist.
*AutoCase
jaPBe can format automatic all typed word. jaPBe search the complete text for words (and by the way, you can see the list in the Info-Panel on the right side). When you want to change the case, simple rightclick in the list or change the style in the editor and press F2.
*Better Tooltip
When the cursor is in a procedure, you can see a tooltip right from the cursor-position-display. Also the current parameter is highlighted. Also jaPBe knows all the Procedures that are declared or defined in the current file.
*FileList
jaPBe can save FileList, so you can open all files of a project very fast.
*Definition-Files
With Definition-Files you can tell jaPBe, that he know the name of Variables, Constants, Structures and Procedures. With this Definition-Files i told jaPBe all definied structures and pb-constants. Also you can add own tooltips for your own procedures in all files.
Look in the Definition-Directory
Note: At the moment jaPBe don't know all API-constants, because when you have to many definitions, the time for loading a sourcecode will increase. But when you want to activate it, rename the "ref-windows_long.txt.old" to "ref-windows_long.txt". Try it!
*Declare-Files
jaPBe can save automatic .declare-Files, which contain all defined procedures of the file.
When your file is named "test.pbi", the declaration is called "test.pbi.declare".
Also when you compile a file, automatic a "all.declare" is created, wich include automatic all declarations. So when you include the "all.declare", you don't must care about, in which order you write the procedures.
Note: All the files must be in the same directory, or all.declare will not found them.
Also when you use your own structures in the parameter-list of a procedure (like "Procedure test(test.ownstruc)") you must definied this structure, before you include the "all.declare".
*Multilangual
At the moment only English and "Deutsch" (German) exist. When you want to translate: Look in the Language-Directory and open one of this files and translate all the sentence and save it under a new name. Then jaPBe knows this languages. Change it in the Preference.
*Associate with .PB, .PBI and .PBDL
And the best: I don't touch the regestrie-entries of the original editor. .PB are then automatic open with jaPBe, but in the context-menu of the .pb-files you found the original editor (under open).
Note: You must press the associate-button in the preferences, or nothing will be changed.
*Bracehighlight in two diffrent ways.
*Mark Current Line
You can highlight the current line with a diffrent background.
*Automatic Indentation
Type a if-else-endif over more lines and you see, what i mean.
*Scrollmargin
The original editor only scrolles, when the cursor would scroll outside the edit. In jaPBe you can set a boarder, so you can see, where are you scrolling in.
*Better Undo
More steps are saved in the Undo-Buffer.
*Load/Save Block
You can save the current selection and you can load selections.
*Improved Find
It should now function more like other find-windows (replace first highlight the text, that should be replace.)
About Extended Chars (here a little copy of the documentation of scintella)
. Matches any character
\( This marks the start of a region for tagging a match.
\) This marks the end of a tagged region.
\n Where n is 1 through 9 refers to the first through ninth tagged region when replacing. For example, if the search string was Fred\([1-9]\)XXX and the replace string was Sam\1YYY, when applied to Fred2XXX this would generate Sam2YYY.
\< This matches the start of a word using Scintilla's definitions of words.
\> This matches the end of a word using Scintilla's definition of words.
\x This allows you to use a character x that would otherwise have a special meaning. For example, \[ would be interpreted as [ and not as the start of a character set.
[...] This indicates a set of characters, for example, [abc] means any of the characters a, b or c. You can also use ranges, for example [a-z] for any lower case character.
[^...] The complement of the characters in the set. For example, [^A-Za-z] means any character except an alphabetic character.
^ This matches the start of a line (unless used inside a set, see above).
$ This matches the end of a line.
* This matches 0 or more times. For example, Sa*m matches Sm, Sam, Saam, Saaam and so on.
+ This matches 1 or more times. For example, Sa+m matches Sam, Saam, Saaam and so on.
*Better Error-Support
When a error appear in a include, jaPBe try to highlight this line in the include.
*Infobox
Here you see the current state (compling,etc) and all error-messages and so on.
*"set as main file" and "compile file" (Compiler Options)
You can say jaPBe, that he should compile a diffrent file, when you start to compile the current file.
Set as main file will change all open ".pbi" (NOT ".pb"!), so that they will compile the current file.
This is usefull, when you have split you project in diffrent files. In the original editor you must switch to a subfile, change to the mainfile and f5, found a error, swicht in the subfile, edit, change back to main, f5 ,... On japbe you the the subfile, that he should compile the main-file.
*Advanced Ascii-Table
Try it out!
*PlugIns
jaPBe has the posibility to comunicate direct with plugins. So a plugin can get the current filename, the selection, the actual word, the current line and the complete text without saveing it on the hdd. Also the Plugin can open a file, create a new file with a new text and so on. For more, look in the Plugin-directory.
You find Plugins in the Tools-Menü.
Additonal Notes:
The Visual-Designer Plugin starts the Visual Designer. It gives you also the possible to redirect files, that should open the original editor, to jaPBe. But this only work, when you set the original editor to run once instance only!
Ok, i'm sure, that i forget something, so try it out!