The Dark Site
An Intelligent Web Environment
Progress - A Short History of Time
- 1.03.2001: (addendum) oops.. forgot to update this page;-) The new version is now
released ! BTW, I'm proud to tell you that BeBits now lists over 10,000 downloads for DarkSite.
Thanks to all of you for your interest and great support!
- 26.02.2001: fixed the ugly redraw-bug on Delete that was surprisingly appearing.
Please update to the latest patch.
There's an up-to-date PPC-build now, too!
Check out the new FAQ!
is out with international encoding-support and other fixes!
Get it while it's hot, public release coming soon, maybe I'll add some minor fixes before that.
New in 0.7.1.5
- user's default-encoding is now used when opening files instead of AUTO-Encoding
- newly created files' mime-info is now updated to reflect the correct (HTML-)icon and filetype
- Encodings like ISO-8859-1, KOI-8-R etc. can be used and save you the headache and ugliness of &entities;
- Auto-detection of encodings by parsing the
charset-value of the META-Content
- various cleanups, fixes (thanks to user-feedback) and optimisations
There's a new bugfix out, it fixes the rare crash when opening the Find-panel,
among other small fixes. Download it below.
On another note, this will be an exciting new year for Be, as it looks!
With a supportive community like that (thanks you know who you are!), and the recent news from Be,
it certainly promises to be a great year! (tock, tock)
- 14.11.: Patch 0.6.9.11 available
- fixes a crash in the "Open..."-menu (non-existant recent documents caused trouble...)
sorry for not discovering that one earlier...
- 08.11.: Get 0.6.9.10 - public Release pending
- B GUI-Bug in Prefs-Window with Unicode fonts fixed now! (relieve, Russian users!:)
- Issue: due to a bug in Be's DrawString(), these fonts are displaced (-2 pixels or so)
and cut off at the top - this is not top priority now, but I'll look into it another day
- * Prefs/Slider "Changes/Seconds": now the checkbox's label contains the amount of changes/seconds - previously,
it was printed above the slider.
- B Preview-Textview in Prefs/Browser-Preview was enabled by mistake
- 28.10.: New update released
- + File-Handling
- * file-handling is now fully buffered
- B fixed a serious bug when handling very large files (original file was not restored!)
- * window is now closed when an error occours
- o forgot to use a dynamic array in a routine (unnecessary mem-consumption on PPC)
- * window is now immediately opened when opening a file and the progress is displayed
- o small optimisation when checking for the default browser
- * offset was not always updated (after Search, changing selection with cursor highlighted incorrect range)
- + Auto-Conversion from CR+LFs (Windows) to LFs (Be et al)
- B fixed the signature (I was locked up by the MIME-police!;)
- 20.10.: Finally another public release
- Yeeeyy! I matched the deadline and uploaded a new public release. Changes since the last Beta:
- * wordwise selection is now fully implemented (phew!)
- i some Source-Cleanup
- B reworked positioning of document-window - works now as expected
- + Prefs-Window now also remembers position&size;
- + Search-Window now remembers options and Find/Replace-Texts
- Todo: remember "Find In"-setting
- * support for wheely-mice added :)
- B fixed/reworked several issues with the horizontal scrollbar-handling (Document-Width-management)
- * changed look of Search-Window to TITLED_WINDOW
- Being a bit ill lately, it took me longer than intended, but
tonight, the new public release will finally appear! yey:)
- 10.10.: 0.6.9.3 Beta now available - near to release!
- * fixed/reworked several issues with the horizontal scrollbar-handling (Document-Width-management)
- + changed look of Search-Window to TITLED_WINDOW for better visibility
- + implemented wordwise *selection*
- * first window is now opened at user-position (needs some more atttention..)
- 06.10.: Latest 0.6.9.1.Alpha includes:
- B fixed GUI-bug in scrollview-corner (no more garbage when resizing window)
- + horizontal scrollbar now represents document-width! (this is *non* trivial..)
- # some issues remaining
- # Undo not handled correctly when cursor has been moved -> resolved in next release with unlimited undo
- * keyboard-scrolling now works
- B cleaned up after closing window (oops;)
- B silly error-checking-bug in PrefsWindow fixed
- * wordwise-navigation now works
- 22. 9.: New update 0.6.8.6 (including new PPC-build!) which implements some user-suggestions:
- + Statusbar: Dirty-Indicator (changed = '*') and Size of document is shown now
- B nullbytes disallowed in TextView (puts textview into strange mode)
- + wordwise-navigation (not quite ready yet)
- + scroll up/down (left/right does not really work yet) with Option+Cursorkeys
- + "Open" got its shortcut back:) (Thanks to Christopher Lenz for helping me out)
- + I'm using more scripting inside DarkSite - later, when the Message-Constants are public, you can send nice scripting-messages to DarkSite...
- + Untitled-count now starts with 1 (more human readable;)
- + Label "iGnOrE cAsE" renamed to "ignore CASE" - more readable, but still original..:)
- * remembers position and size
- Settings-Window: Syntax-Styling: "Text" renamed to "Normal Text"
- Main-Window now remembers default position&size;
(I won't tell you how - please have a try and tell me if you find it's intuitive enough (BTW I like the current solution :) )
- Type-O-Matic: a little preview:)
|'Control' + Space
|Shift + Enter
|'Control' + Enter
|(Note: 'Control' is "Alt" if you have PC-style navigation configured in Menu-Prefs (check Ctrl as shortcut-key)
- 19. 9.: New update with the following enhancements and fixes:
- Open now expands to show recent documents
- Statusbar: filesize and busy-indicator are now shown
- more intuitive navigation: horizontal cursor-position is retained over short lines
(as this does not always what you want, I'll make this configurable later
- removed border around the HTML-View
- fixed missing null-check in Preferences' font-popup-routine (bug would have only occoured
in the rare case when an item could not be added to the popup)
Grab the update and please tell me what you think.
- 14. 9.: Well, guess August was summer-pause;)
The positive news is that I finally could implement an optimisation-idea* for the syntax-styler, and even better: it worked!
Infact, the speedup is so wild that I have to share it with you - beware however, this is a development-version.
(under certain circumstances, when quickly entering/deleting quotes, DarkSite uses a LOT of CPU-time, but does not crash - just be patient
if it happens...)
You may download the latest version here (x86, PPC-version will follow in the official BeBits-update - just too lazy/tired to recompile now;).
Have a test with this file, which is specially prepared to 'benchmark' the styler (this is dummy-HTML).
Just delete the bracket and insert it again - you might notice a subtle difference to previous versions *g*...
Thanks to an old but excellent article by Hiroshi Lockheimer about TextViews - this cleared up some issues and my misuse of the TextView..;)
*To be honest, it was more a BUGfix than an optimisation..:-|
- 25. 7.: just a small patch, but one platform more: PPC is now supported!
- GUI (Preview) was slowed down by a workaround - this has been fixed now
- Bug when selecting the comment (switched to mode "Warning")
- Normal text was not visible but hidden at the end of a long line
- crash/crazy-reloading-bug fixed when preview was disabled and DarkSite was opening
a file at launch-time (thanks to Olivier Quinton and 'Kaeto' for reporting this!)
Thanks to the nice people on BeDevTalk who quickly helped me finding some PPC-related issues
and tested the PPC-build!
Expect a more substantial update in late summer... first I'm going on vacation:^)
- 6. 7.: phew - what happend in June? (or better what happened to June?;) Well, everything had to be finished,
and there was no time to implement some cool ideas I have for the next update...
Good news is that I'm now working on some technologies that will spice up DarkSite a bit:
- DUH ™ - Darksite Universal Highlighting and
- DULL ™ - Darksite Universal Language Lookup
On the serious side, these two technologies will work hand in hand to enable handling of different languages (DUH), as it happens that webpages
DULL will be quite cool, too, because it will allow you syntax-checking of any language that has a grammar, along with online-lookup.
In the case of HTML/XML, you will have all the information from the W3C at your fingertips...
This results in a substantial rewrite of the currently used syntax-styler, which will also bring it up to speed, I hope.
I'm working on various other minor improvements too, so stay tuned...
Thanks for all your interest, and keep the e-mails coming! - Greg.
- 15. 5.: News from the marketing-dept.;): Over the weekend, the number of downloads has exceeded the 3,000-mark ! :)
This is a little milestone, I am happy with the feedback I received, and will continue to improve the application as much as possible...
On a sidenote, DarkSite is also included on the
, thanks to Dane Scott's wise selection:)
- 21. 4.: Public Release available!
- * disabled "All Windows" in Search-Panel (comes in 0.7)
- * "Save" is now disabled when not necessary (no changes)
- B Quotes are now included in Code-Search (more logical - everything between <> is Code)
- B old cursor-position is remembered if Search fails (was moved forward by one char)
- i GUI-greylogic is now handled via messages (=code-cleanup, good for my karma:)
- 21. 4.: Release-Candidate available
- B fixed the infamous "crazy-block-selection-bug", mostly found when hitting 'Undo' - yeah!
- * added menuitems for Find Next, Replace, Replace&Find; and Replace All, Find-Panel now remote-controllable:)
- i minor fixes in the SearchWindow (GreyLogic now entirely handled via Messages)
- B continously pressing Replace&Find; could lead to wrong results - this is catched now
- + implemented Search for "Entire Word"
- B fixed possible deadlock in "Find"
- * Find now asks if it should continue from Top, if "Wrap" is turned off; a sound is now played to indicate that the top was reached
- i removed unnecessary Lock() in Line-View
- B "None" is now shown in the popup-label if selected
- 16. 4.: New Preview available
- "Find In" is now implemented
- "Find In"-Popup reworked - implemented my own popup that handles marking of items automatically
- fixed Grey-logic in Find-panel
- quotes are now handled properly and XML-compatible, so single quotes (') are accepted and
<, > are not highlighted when inside a quote
- This triggered some optimisation and cleanup in the Text-insertion-function.
- Find/Replace Textviews too small (due to Popup)
- progress should be shown when a webpage is loaded (FEEDBACK: how long is the delay?) - this would require some technical changes, so it's not in yet
- Search in ALL windows not implemented yet
- fix Undo-Flicker-Bug (I have got an idea how to do that...we'll see)
- 14. 4.: Minor breakthrough here - the intelligent Search-Function (with a re-designed, sophisticated;) popup)
allowing for selective search (for TAGs, Values, Comment,...) is passing internal tests,
which means a new pre-release will be available pretty soon, probably on Saturday..!
- 03. 4.: Latest Preview available!
- successfully compiled under R5 (the new compiler is a bit more picky..;)
- implemented "Replace All"
- implemented Continue at Top
- empty Relace-String accepted, GreyLogic refined
- implement Search across open windows
- Implement "Find In"
- some more testing (counting on your feedback..!:-)
- Progress display when scanning page
- There is a delay when loading in a page - this is normal and ensures that there are no nullbytes in the text,
which would confuse the Search-Function. (Yes, I got such files from the web, indeed!;)
In the release-version, this will be interruptable and a progress will be displayed.
- 27. 3.: 0.6.6 with Multi-Window-Search coming soon!
- implemented XML-support for single quotes (') and nested quotes
- quotes can now contain < and >
- Grey-Logic in Search-Panel implemented (buttons are correctly greyed out when applicable)
- better navigation in Search-Panel: ESC closes it, TAB jumps between Find and Replace
- Cutting and Copying an empty selection no longer erases the clipboard
- 10. 3. 2000: this afternoon, I spent some time on the Search-function, which is available in the latest Preview.
- Find (in current file), selection automatically inserted as Find-String
- Multi-Line search
- Ignore Case when searching
- Implement "Entire Word", "Continue at Top", Replace and Replace All
- finish the GUI
- 06. 3. 2000: Finally, the official release 0.6.3.6 is available! Changes since RC2:
- (*) Line-View is only updated when necessary -> does not flicker anymore
- (B) when changing Preview-Prefs, the Preview-Windows of the relevant browsers (and only these) are closed
- (B) fixed 2 stupid bugs when quitting ("Save changes to..." was not handled correctly, Preview was initiated when quitting (which led to a crash)
- (i) internal code-cleanup (removed obsolete messages and the BusyBar)
- (B) Opera was not reloaded (does not reload page when URL is set!)
- (B) Status-Text is now immediately (and more elegantly) updated! (was important for feedback during the Preview-Process)
- (B) Status-Bar: forgot to lock looper when updating Line-Number (possible rare problem)
- (+) Finally got rid of BusyBar, will be replaced with a nice icon - BeOS is never 100% "busy", but always responsive :-)
This should eliminate even the most obscure crash now (was a bit problematic) ;)
- 05. 3. 2000: this patch adds:
- all temporary files are deleted after Window Close / Quit
- no open windows are reported when Browser was closed
- Bug in Revert fixed (Popups were not correctly reset)
- Popups have nice labels that reflect the marked workspaces
- Preview: if another URL was entered before, the Preview is updated correctly again
- full Grey-Logic in Prefs/Preview
- Update status-text correctly
- Preview disabled when a file is loaded (oops:)
- 03. 3. 2000: the soon-to-be-released version, 0.6.3, is available below, featuring Browser-Preview:
- supported Browsers: NetPositive and Opera
- intelligent refresh in the background, which is updated upon save, a time-intervall and/or changes in the document
- Browser-Window can be present in as many workspaces as you like (!) or follow the application's workspace
- No need to save the document to preview it
- 29. 2. 2000: on this special date, I have to present you the
Pre-Release of the upcoming v0.6-version: this gives you finally intelligent, versatile and highly configurable
Note that the Workspaces-settings do not work yet.
- 18. 2. 2000:
- Patch 0.5.7.2 fixes two bugs in the Preferences-Window:
- Crasher when closing Prefs-Panel immediately after selecting "Revert"
- Selection in HTML-Preview is ignored - previously, the mode was updated for every char in the selection...(annoying)
- The "strange bug" you all experienced is solved!
I overlooked a problem when no settings are found - and another one in the error-routine itself :-/
Sorry for this, and I hope you like the app better now...;)
- 17. 2. 2000:
- New public release! Download now!
- Added: window-position of each file is remembered (if saved to a BFS-volume)
- Now working on Browser-Preview
- 16. 2. 2000: fixed comment-handling for empty comments (<---->), BusyBar is now refreshed again (this time safer)
- 15. 2. 2000: oh no... almost a month since the last update:-( I have been on holidays, but also been productive:
- New Beta released! Grab it below
- Added comment-support - still needs some optimisation, which I'm working on now.
- Sped up and cleaned up Syntax-Styler by the way... :) (more responsive, up to 20% faster here)
- fixed deadlock that occoured sometimes when Syntax-Styler was active and the cursor was moved/other window-interactions (mostly during Invalidate() )
- 18. 1. 2000: just discovered the 2nd bug:(
- 16. 2. 2000: some minor layout-changes (NetPositive-friendly) and fixed the base-url (sothat all links break out of the frameset)
- 15. 2. 2000:
incorporated this doc into the New
- 19. 1. 2000:
- Added requirements - liblayout IS important...!
- Added Weboardo-Link
- 17. 1. 2000: made real thumbnails, a nice table for the bugs and added the lovely icon:) )
What is it?
The Dark Site is intended to become an integrated, intelligent environment for creating HTML-documents.
I am currently concentrating on the Editor, to allow for a good insight into your HTML-code.
Afer the editor is ready to allow for smooth and rapid coding, I will add other modules, such as Inspectors for
specific HTML/XML-tags or a SiteManager (see Features).
The aim is to aid web-developers in HTML-coding as much and efficient as possible, without interfering and getting in your way.
Take a look at the planned features to get an idea of my vision:-)
I have many things in mind, but I am interested in your opinions, bug-reports and motivation -
your feedback will be appreciated and answered, either personally, or here (later).
What is it not?
The Dark Site is not intended to become a WYSIWYG-HTML-Editor like Dreamweaver or Pagemill/GoLive - there are several reasons for this:
- It would be very hard to code - I really don't have the time and manpower for this, better spend my time on other BeOS-projects, too...;)
- These editors are often not as intuitive to use as advertised - text-editors OTOH are very easy to handle - just type away..!
- They often produce code of questionable quality - automatically generated code will never reach the quality of manually
fine-tuned code, but bloating your HTML-code and slowing down the page-loading-time.
- the WYSIWYG is a fake anyway: it only helps you when designing the webpage, but it will always differ from
a browser-rendered page - and this is all what counts in the end: how does it look in the real world?
If you need this kind of tool, InSite Designer (formerly named "Weboardo") might be worth to check out.
So because of these issues, I decided to take another approach:
What You Code
Is What You Get
This will be the main concept in DarkSite: concentrate on XML/HTML, not the rendering - this will be done externally -
allow hands-on-the-code, but offer as much and as intelligent help as possible, thus bringing you all
the advantages of hand-coded HTML, without requiring you to do everything by hand without any help.
- Brainware: some HTML-Skills: I want to add some helpful features as soon as I can, but this tool assumes you have at least some
basic knowledge of HTML.
liblayout 1.3.0 or higher -
otherwise, you won't be able to launch the app.
- lightweight, fast and flexible:)
- extensive, live and configurable syntax-coloring
- the most versatile Browser-Preview, unmatched and only possible in BeOS!
- works with all versions of NetPositive and Opera
- updated on various events: specify a timely interval, update on save, update after n changes or completely manual
- Only one browser-window per page is opened for preview
- intelligent, HTML-optimised Search and Replace
- search for specific parts in your HTML-document (search code, comment, text separately!)
- uses standard shortcuts and menus like in BeIDE or StyledEdit
Planned for 1.0 and later
- intelligent Type-O-MaticTM: automatic conversion from special chars to entities and other HTML-code
- live HTML-Help, online lookup and Tag-completion
- Toolbar for the most important Tags
- Intelligent Inspectors
- allowing you to "configure" the HTML-Tags... more info on this will be published as the development progresses.
- shows the structure of your site
- shows the relations of the site-elements
- later: FTP-support to synchronise with the online-version
- Problem: When using Undo, the horizontal scrollbar might not be updated correctly.
Solution: This can only be solved with implementing my own (unlimited) Undo-mechanism,
which I am working on now.
The new search-function...
Debugging with BDB
Browser-Preview in action...
For voting and viewing statistics, please go to DarkSite's page at BeBits (the download-link points to this homepage)
You may find other copies by searching with Google,
the best search-engine IMO, not only because Dominic Giampaolo, former Be-engineer, is working there:)
Closing Words and Credits
I have created The Dark Site because of my own needs (selfish as I am;), and I am using it for my own web-work (also for this document, needless to say;),
so you can be sure I will try to keep it as bug-free as I can.
However, if you encounter problems or have ideas, only if you submit bug-reports and feedback, I can do something to make them a reality and improve the DarkSite !
Special Thanks this time go to:
- Ted Leeuwesteijn for his tremendous support, feedback and motivation !
- Dianne Hackborn, for her quick&helpful support and for keeping BeOS going!
- Billy Kakes for his good suggestions (small but useful!),
- Sergei Dolgov for his patience with the encoding- and liblayout-issues..!
- Nicolas Mougel for hosting a nice DarkSite-download-page and giving good feedback
And last but not least:
- Marco Nelissen for being a productive and supportive Be-engineer and
for the great GUI-library
- ...and all those nice people who submitted constructive, nice and helpful feedback!
I appreciate your comments and I am looking forward to hearing from you (again) :-)
Last updated on: March 7th, 2001