Page 2 of 2
Posted: Thu Feb 21, 2008 1:42 am
by jussij
Hi Alan,
Yeah, I've noticed that the HTML colouring is awkward at best.
The Zeus colorizer was never really designed with HTML in mind so it doesn't do it as well as it should
Is there any cause to try and make the XHTML constructs like <br /> and <hr /> colour properly?
I don't think this is possible, without some fairly major re-working of the entire colorizer engine.
I'm kinda avoiding patterns for now. I find they can be very confusing.
They can be good for some things. For example in my c/c++ document type I define the
ID* pattern and this means that in code like this all the ID's paint with the same nice color

:
Code: Select all
#define ID_SIDEBAR 610
#define IDTF_WORKSPACE 6001
#define IDLB_PROJECTFILES 6002
#define IDEF_MAKEFILE 6003
#define IDEF_BSCFILE 6004
Sometimes when I run macros on marked text, the text is no longer maked when the macro is done but the display still shows the marked area. How do I tell things to do a refresh to unmark the seemingly marked area?
Make sure you have a call to the
screen_update function at the end of your macro.
I think your string pattern matching is working better. At least with escaped "s it seems to be. Which is nice.
The pattern matching code has had a few changes in recent years
Cheers Jussi
Update
Posted: Thu Feb 21, 2008 8:41 pm
by AlanStewart
The colourizer works okay for HTML. It gets the gist across and that's what's most important. Maybe it's not "perfect" but it works for me. I think part of it is because HTML isn't set up like a regular programming language. You'd almost have to fully parse it to figure out what was what.
That's a good use for the patterns. I hadn't thought of that. Too bad there's no way to set up custom patterns for different projects.
Hmm, I am doing a screen_update_enable() at the end of my functions. Is that the wrong function? Hmm, now *THAT*'s annoying. It looks like almost every other macro is using it, but not my comment/uncomment ones. Grrr.
I like the new string pattern matching.
-----
New stuff:
Is there any possibility of setting up some sort of line wrap that *doesn't* put in newlines? I kinda appreciate that that's just not the way Zeus works but I've been doing some XHTML coding and there seems to be a push to have lines wrap so that they appear on the screen but it's really just one long line. Sorta like Notepad I guess. Or HomeSite.
For some reason I'm still having issues with bookmarks disappearing in the bottom half of a split window. I've got F3 mapped to WindowViewSplitHorizToggle. Should I be using something else? I tried this with the Window / Split Vertical and Split Horizontal and they both seem to disable bookmarks in the other window.
1. Get a file of some length, but I don't think it really matters.
2. Place a bookmark, pretty much anywhere.
3. Bring up the bookmark list (BookMarkDisplay) and verify that the bookmark is there.
4. Split the window.
5. BookMarkDisplay to verify.
6. Switch to the other window.
7. BookMarkDisplay shows no bookmarks.
8. Switch back to the top/left window.
9. BookMarkDisplay shows bookmarks.
10. Join so there's no split windows.
11. BookMarkDisplay to verify that the bookmark(s) is(are) still there.
12. Split the window again.
13. Switch windows.
14. BookMarkDisplay shows there's no bookmarks.
15. Join the windows so there's only the one.
16. BookMarkDisplay shows that there's no bookmarks.
Fortunately it's only for the current window that the bookmark(s) disappear. Bookmarks in other windows aren't lost.
Update
Posted: Thu Feb 21, 2008 8:59 pm
by AlanStewart
Dang! I keep forgetting all the really great tools you've got in the tools menu! I swear that Zeus is 1000 times greater than I'm even aware of.
WHOA! You got HTML verification! Nice! I'm just learning all about that stuff. This will come in handy. I need to look into that. I need to find something that'll do HTML verification (and CSS) for a complete website, not just one file at a time.
I'm still puzzled by my bookmarking/split window issue. I'm on a completely different machine, running the latest Zeus, and I'm not bringing over all *that* much from my old configurations. Very weird.
Posted: Thu Feb 21, 2008 10:34 pm
by jussij
Hmm, I am doing a screen_update_enable() at the end of my functions. Is that the wrong function?
This is the basic pattern for all Zeus macros:
Code: Select all
function key_macro()
screen_update_disable()
-- put your code here
screen_update_enable()
screen_update()
end
key_macro() -- run the macro
This macro code turns off screen updates which helps speed up the macro playback. The three screen update functions in the macro above show how to disable screen updates, re-enable screen updates and refresh the screen.
Hmm, now *THAT*'s annoying. It looks like almost every other macro is using it, but not my comment/uncomment ones. Grrr.
Just post the code for one of the smallest of your macros that does not work.
Is there any possibility of setting up some sort of line wrap that *doesn't* put in newlines?
This feature has been asked for several times, so it is on the Zeus todo list. But it is a little difficult to implement and test so it is way down on the list of things todo
For some reason I'm still having issues with bookmarks disappearing in the bottom half of a split window.
When you split the screen the line numbers and bookmarks margins disappear, but you should still be able to get to them via the bookmark dialog.
Split Vertical and Split Horizontal and they both seem to disable bookmarks in the other window.
Ok I can see the problem now
The bookmarks are not so much disabled as not copied over to the new view. For example if you display the bookmarks dialog on the other view it will show there are no bookmarks for that view and that is the problem
Cheers Jussi
Update
Posted: Thu Feb 21, 2008 11:55 pm
by AlanStewart
I've gone and copied that macro code into my stub so that I don't forget for next time. Silly me! Although I still seem to be having my problems with the mark not being cleared after a macro is run, even after putting screen_update() in where it should be. I gotta look more into that.
When I get something positively identifyable I'll let you know.
Bummer about the linewraps but I do understand.
Okay, I'm glad I was able to show where my bookmarks were disappearing. Hopefully that'll be a quick and easy fix for the next update.
Update
Posted: Fri Feb 22, 2008 11:57 pm
by AlanStewart
I think I'm getting to the end. I've got most of the file types worked out and am just finishing up my main macroes.
Hmm, this is funny. 3.95z exported my extra C++ keywords as
"BOOL__int64long64size_tstringwstring"
Only, not. If I pasted that string into here or changed Zeus to read UNIX files and edited the import file then it's line-by-line. Only the import to 3.96n keywords still treats it like one string. Does the import not check for UNIX style imports? At any rate I got 'em entered so that's cool.
Man, Regex's are a tough nut to crack.
I'm trying to match all hex and decimal numbers but all I can do is get it match CSS colour values. I'll have to look at it some more later I guess.
(#[0-9A-Fa-f]+)|([0-9]+)
Still, I was able to import all the keywords from a .SYN file like you suggested so that makes me very happy!
Okay, that's it. I think I've got everything moved over that I need to. The next step is to work away at things and see what doesn't work "the way it used to". This is so nice to finally be working with the latest Zeus again!
Posted: Sun Feb 24, 2008 10:29 pm
by jussij
Hi Alan,
Hmm, this is funny. 3.95z exported my extra C++ keywords as "BOOL__int64long64size_tstringwstring"
Looks like a bug to me
Does the import not check for UNIX style imports?
Ok that's the bug. The import assume a MS-DOS text file format. That should be easy enough to fix
Man, Regex's are a tough nut to crack.
I am no regexp guru, but I have found that it is not always possible to get a single regexp to do exactly what you want.
I'll have to look at it some more later I guess.
If you post a snippet of example code I'd be happy to give it a shot
This is so nice to finally be working with the latest Zeus again!
It's good to have you back
Cheers Jussi
Update
Posted: Mon Feb 25, 2008 4:34 am
by AlanStewart
Yeah, it does look like the EOL handling is a bit off. I can appreciate needing a /r/n when we were dealing with teletypes, but really, shouldn't that silliness have disappeared, oh, around 30 years ago???
I always liked the Brief regex's because they were *SIMPLE*, but even with them, I couldn't always get what I wanted. There's got to be *SOMEONE* out there who can provide you with Brief regex handling?
Code: Select all
body
{
background-color: #868;
color: #000;
font-size: 1.0em;
font-family: verdana, arial, sans-serif;
margin: 2.0em;
}
.content
{
background-color: #C8D;
width: 80%;
margin-left: auto;
margin-right: auto;
padding: 20px;
}
So in there we have examples of #000, 1.0em, 80%, and 20px, all of which it sure would be nice if I could get 'em all to show up as numbers. Maybe I should just try getting each of them to work and *then* combine 'em all? I'll see what I can do with that.
Or is it just that these numbers (#C8D, 20px, 80%, 1.0em) aren't numbers surrounded by whitespace?
Hmm, okay, this kinda works:
Code: Select all
(#[0-9A-Fa-f]+)|([0-9]+\.*[0-9]*(em|px|%)*)
P.S. This is annoying. I know you want to cut out the spammers, but isn't there some way to make PHPBS know the difference between submitting and *editing* something right after submitting the same entry?
Posted: Mon Feb 25, 2008 5:56 am
by jussij
Hi Alan,
(#[0-9A-Fa-f]+)|([0-9]+\.*[0-9]+(em|px|%)*)
This looks good to me (ie it should work) but make sure the
# character is not defined as delimiter character.
P.S. This is annoying. I know you want to cut out the spammers, but isn't there some way to make PHPBS know the difference between submitting and *editing* something right after submitting the same entry?
Unfortunately spammers are the curse of PHPBS forums
I have the message flood period is currently set to about a minute, so if you get the
too soon to post message just use the browser back button and wait a few more seconds
Cheers Jussi