code logs -> 2010 -> Thu, 10 Jun 2010< code.20100609.log - code.20100611.log >
--- Log opened Thu Jun 10 00:00:29 2010
00:09 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
00:15 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
00:29 You're now known as TheWatcher[T-2]
00:29 Derakon[AFK] is now known as Derakon
00:34 You're now known as TheWatcher[zZzZ]
00:34 Attilla [Attilla@Nightstar-5dd66102.threembb.co.uk] has quit [[NS] Quit: ]
01:04 AnnoDomini [annodomini@Nightstar-1dc80b48.adsl.tpnet.pl] has quit [[NS] Quit: ENOUGH.]
01:31 * gnolam laughs out loud.
01:32
< gnolam>
There are usable jukeboxes in Left 4 Dead 2.
01:32
< gnolam>
Jonathan Coulton's "Re: Your Brains" is on the playlist. :D
01:32
< McMartin>
Nice
01:49
<@ToxicFrog>
And it attracts the horde ;.;
01:50
< McMartin>
The next question is if it has "I MAED A GAME WITH Z0MB!3Z IN IT!!11!".
02:11 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?]
02:17 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
02:25 DarkBubbz [Darkbubbkes@Nightstar-7b225bb2.ed.shawcable.net] has joined #code
02:39 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
02:39
< DarkBubbz>
Meow
02:49 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
02:53 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
03:09 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
03:13 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
03:43 DarkBubbz [Darkbubbkes@Nightstar-7b225bb2.ed.shawcable.net] has left #code []
04:11 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
04:16 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
04:19 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
04:21 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [[NS] Quit: If the world didn't suck, we'd all fall off.]
04:23 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
04:36 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [Ping timeout: 121 seconds]
04:44 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [Client closed the connection]
04:45 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has joined #code
05:16 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
06:21 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: *hums* Can't stay now!]
06:27 AnnoDomini [annodomini@Nightstar-1dc80b48.adsl.tpnet.pl] has joined #code
06:27 mode/#code [+o AnnoDomini] by 459AAEB09
06:38 Derakon is now known as Derakon[AFK]
07:00 cpux is now known as shade_of_cpux
07:16 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
09:01 * Tarinaky does a happy dance 1k lines of working code!
09:01
< Tarinaky>
:D
09:02
<@Vornicus>
Woot!
09:10
< Tarinaky>
Also - I have a roguelike on my mobile phone. >.>
09:12 You're now known as TheWatcher[zZ
09:12 You're now known as TheWatcher
09:12
< McMartin>
Vorn
09:13 * McMartin points to PM
09:39 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection]
10:31 Tarinaky [Tarinaky@Nightstar-88a320dc.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
10:44 Tarinaky [Tarinaky@Nightstar-b442d622.adsl.virginmedia.net] has joined #code
10:57 Tarinaky [Tarinaky@Nightstar-b442d622.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
11:09 Tarinaky [Tarinaky@Nightstar-2e65528b.adsl.virginmedia.net] has joined #code
11:37 You're now known as TheWatcher[afk]
11:40 AbuDhabi [annodomini@Nightstar-9eda9802.adsl.tpnet.pl] has joined #code
11:42 AnnoDomini [annodomini@Nightstar-1dc80b48.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
12:09
< Tarinaky>
Eugh. I wish I had that book on compilers to refresh my mind on tokenizers and stuff >.<
12:15 * Tarinaky wonders if he should wait to talk it through with one of the 'experts' in the channel.
12:16
<@Vornicus>
There are many experts!
12:17
< Tarinaky>
I can't remember if it was TF or TW who said they did compilers in depth at Uni.
12:18
< Tarinaky>
But basically. Atm I'm trying to make it as easily human editable as possible because I want to use the same system for game data as save files.
12:19
< Tarinaky>
(To quote someone in the channel, you can always compress it later)
12:21
< Tarinaky>
I'm not really 100% sure how to structure things beyond that aside from making sure that semi-colons are on the end of every line. (Moving between languages that do and don't have semi-colons causes errors for me >.<)
12:21
< Tarinaky>
Things being the language of the data files.
12:23 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code
12:24
<@Vornicus>
JSON
12:24
<@Vornicus>
It is your tiny serializing god.
12:27
< Tarinaky>
What I have atm is:
12:27
< Tarinaky>
Record -> [record_type] [key] : Fields ;
12:27
< Tarinaky>
Fields -> [field_name] ( [value] ) | [field_name] ( [value] ) , Fields
12:27
< Tarinaky>
Assuming I remember BNF notation correctly >.> Which I probably don't.
12:28
<@Vornicus>
Are you doing this for a class?
12:28
<@Vornicus>
Because if not? Human-readable data serialization is very much a solved problem.
12:29
< Tarinaky>
Each record is an instance of a class.
12:29
< Tarinaky>
That's allocated on the heap.
12:30
<@Vornicus>
No, no, like, school
12:31
< Tarinaky>
Oh. No.
12:31
<@Vornicus>
Then JSON.
12:33
< Tarinaky>
I would like to indicate that I want to hand-roll the reader/writer.
12:33
< Tarinaky>
:x
12:34
< Rhamphoryncus>
why?
12:35
< Tarinaky>
Because I want to.
12:35
< Tarinaky>
For learning purposes.
12:35
< Rhamphoryncus>
So look up the json specs and implement your own
12:36
< Tarinaky>
Aye, it's just parsers have always evaded my abilities in the past >.<
12:36
< Tarinaky>
Hence why I wanted to talk through it with someone.
12:39 * Rhamphoryncus goes and reads up on the chomsky hierarchy
12:39
< gnolam>
Oh, that's another horrible pun in Left 4 Dead 2.
12:40
< gnolam>
The garden gnome from Half-Life: Episode Two makes another appearance (and has a new achievement).
12:40
< gnolam>
Only this time, it has a name: "Gnome Chomsky". >_<
12:41
< Tarinaky>
I groan.
12:48 Vornicus is now known as Vornicus-Latens
12:49
< Tarinaky>
{key:"Player_1",glyph:"@",position:"5,5"} << is this valid JSON or am I misreading the spec... the flowcharts are hard to read :/
12:49
<@Vornicus-Latens>
Yes.
12:49
<@Vornicus-Latens>
Oh, and it doesn't care about whitespace: {key: "Player_1", glyph: "@", position: "5,5"} is valid too.
12:50
<@Vornicus-Latens>
Actually I'd break up position into an array: {yadda yadda, position: [5, 5]}
12:50
< Tarinaky>
Ah, didn't see array.
12:51
< Tarinaky>
{key:"Player_1",glyph:"@",position:[5,5]}
12:54
< Rhamphoryncus>
>>> json.loads('{"key":"Player_1","glyph":"@","position":[5,5]}')
12:54
< Rhamphoryncus>
{u'position': [5, 5], u'key': u'Player_1', u'glyph': u'@'}
12:54
< Rhamphoryncus>
Had to make the keys into strings for it to parse
12:56
< Tarinaky>
Ahh.
12:57
< Tarinaky>
I have to say. This doesn't half look butt ugly :/
12:57
< Tarinaky>
I mean. Better than XML but only just >.<
13:15
<@ToxicFrog>
You could always use Lua~
13:18
<@ToxicFrog>
Also, it doesn't look as bad prettyprinted:
13:18
<@ToxicFrog>
{
13:18
<@ToxicFrog>
"key": "Player_1",
13:18
<@ToxicFrog>
"glyph": "@",
13:18
<@ToxicFrog>
"position": [5,5]
13:18
<@ToxicFrog>
}
13:19
< Tarinaky>
True.
13:20
< Tarinaky>
I'm currently trying to work out how to avoid putting a comma after the last key-value pair.
13:22
<@ToxicFrog>
JSON doesn't allow trailing commas
13:22
<@ToxicFrog>
?
13:23
< Tarinaky>
Not according to this spec.
13:23
< Tarinaky>
members -> pair | pair, members
13:24
<@ToxicFrog>
Aah.
13:24
<@ToxicFrog>
Well, either: check if it's the last pair before writing the ,
13:24
< Tarinaky>
Or ungetch.
13:24
<@ToxicFrog>
or: write the first one without, and subsequent ones as ",\n key: value"
13:24
< Tarinaky>
(Or whatever the method it >.>)
13:25
<@ToxicFrog>
That's not what ungetch does. Possibly you're thinking of seeking back one character and overwriting the ,. That would also work.
13:26
< Tarinaky>
Yes.
13:26
< Tarinaky>
Looking at fstream there isn't an ungetch function but it was a good guess >.>
13:27
< Tarinaky>
Also trying to work out if my current... design is a good idea.
13:27
<@ToxicFrog>
It's almost certainly easier to use one of the techniques I mentioned~
13:28
< Tarinaky>
ATM I'm leaning towards making the json stuff be its own class and essentially copy everything into that rather than try to deal with the data in situ.
13:28
< Tarinaky>
One of the techniques you mentioned being the off-the-shelf library or...?
13:29
<@ToxicFrog>
<ToxicFrog> Well, either: check if it's the last pair before writing the ,
13:29
<@ToxicFrog>
<ToxicFrog> or: write the first one without, and subsequent ones as ",\n key: value"
13:29
<@ToxicFrog>
As opposed to writing it regardless and then backseeking.
13:30
< Tarinaky>
Ahh.
13:30
< Tarinaky>
Yeah.
13:30
<@ToxicFrog>
Overall design wise, I have to say that if I were doing this, and doing it in C++, I'd just link in liblua and use that both game logic and savegame format. But then you don't get the exercise of writing your own parser (unless you feel like writing a Lua parser, but that's a bigger task because it's a complete programming language)
13:31
<@ToxicFrog>
And now, work.
13:31
< Tarinaky>
Alright. Bye.
13:39
< Tarinaky>
What's the escape character for a tab anyway?
13:39
< Tarinaky>
Ah, nm. Didn't google hard enough.
13:51 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has quit [Client exited]
14:13 You're now known as TheWatcher
14:47 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has joined #code
15:04 Tarinaky [Tarinaky@Nightstar-2e65528b.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
15:18 Tarinaky [Tarinaky@Nightstar-25c793f0.adsl.virginmedia.net] has joined #code
15:32
<@ToxicFrog>
Topic of team meeting today: if we keep breaking the build we'll all end up too bloated and corpulent to move, given the new policy of pastries
15:36
< Reiv[Graduate]>
haha, what
15:55
<@ToxicFrog>
The original policy was that if you checked something in that broke the build, you had to use the Build Pen until someone else broke it.
15:55
<@ToxicFrog>
This was a great incentive, because the Build Pen was, well...
15:55
<@ToxicFrog>
It was a bright blue translucent ballpoint pen.
15:56
<@ToxicFrog>
And atop it, a blue plastic bulb full of beads that it rattled when moved.
15:56
<@ToxicFrog>
And atop that, a blue and yellow plastic bird's head with giant googley eyes.
15:56
<@ToxicFrog>
And atop that, a huge blue and yellow plume of feathers.
15:56
<@ToxicFrog>
However, there was an incident, and the build pen was broken.
15:56
< gnolam>
Heh.
15:56
< gnolam>
"An incident"?
15:57
<@ToxicFrog>
So now the policy is that if you break the build, you must buy a round of pastries for the affected team. Donuts are traditional, but apple fritters are not unheard of.
15:57
< Namegduf>
Oh dear.
15:58
< celticminstrel>
What about cream puffs?
15:58
<@ToxicFrog>
Not yet, but those would also be acceptable
15:59
< Tarinaky>
... breaking the broken build pen... oh the irony.
16:46 * celticminstrel investigates whether awk can be used to convert timestamps from one timezone to another...
16:47
< Reiv[Graduate]>
ToxicFrog: That is simultaneously awesome, and needing of a new Build Pen.
16:47
< Reiv[Graduate]>
Perhaps they should redo the rules where if you break the build, you get the Build Pen.
16:47
< Reiv[Graduate]>
If you break it and fail to fix it within X, you buy the pastries~
16:47
<@ToxicFrog>
celticminstrel: possibly you want 'date'?
16:48
<@ToxicFrog>
Reiv[Graduate]: there are no new ones.
16:48
< Reiv[Graduate]>
TF: What?
16:48
< celticminstrel>
I dunno...
16:48
< Reiv[Graduate]>
The item of which you speak I have seen in novelty stores repeatedly
16:48
< Reiv[Graduate]>
Usually in the Tacky Tourist Crap section.
16:48
< celticminstrel>
The timestamps are at the beginning of each line...
16:49
< celticminstrel>
...I should also check sed.
16:49
<@ToxicFrog>
celticminstrel: so what is it you actually want to do?
16:49
<@ToxicFrog>
Reiv[Graduate]: these were custom.
16:50
< celticminstrel>
I have a file with timestamps at the beginning of each line; I want to convert the timestamps to UTC without changing the rest of the file.
16:50
<@ToxicFrog>
There's no shortage of horrible pens, but Bluecoat Systems horrible pens are in short supply.
16:51
<@ToxicFrog>
celticminstrel: and they're currently in local time?
16:51
< celticminstrel>
Essentially.
16:52
< Reiv[Graduate]>
TF: Hahahaha, I see
16:57
< celticminstrel>
...or I could just write a quick Python script to do it.
16:57
<@ToxicFrog>
celticminstrel: hang on
16:59
<@ToxicFrog>
ben@leela ~ $ date -u -d "2010-03-24 08:34:33 EDT"
16:59
<@ToxicFrog>
Wed Mar 24 12:34:33 UTC 2010
16:59
<@ToxicFrog>
ben@leela ~ $ date -u -d "2010-03-24 08:34:33 EDT" +"%F %T %z"
16:59
<@ToxicFrog>
2010-03-24 12:34:33 +0000
17:02
<@ToxicFrog>
celticminstrel: date -u gives you the date in UTC. -d "foo" describes date foo rather than now, and it's very flexible in what it accepts. +"bar" outputs the date in format bar rather than locale default.
17:03
< celticminstrel>
Apparently my version of date doesn't take the -d option as such, but considers positional parameters in that way.
17:04
< celticminstrel>
And only accepts a specific format.
17:05
<@ToxicFrog>
Oh, OSX.
17:05
<@ToxicFrog>
Sorry.
17:08
< celticminstrel>
Even if I can figure out how it works on my computer, I'm not sure how that would help me...
17:08
<@ToxicFrog>
Figuring out how it works is usually as simple as saying 'man date', at least on linux.
17:08
< celticminstrel>
Yeah, I know.
17:08
<@ToxicFrog>
And it would help you because then you could, from inside sed or awk, call date to do the conversion rather than trying to do it by hand.
17:09
< celticminstrel>
Oh.
17:11
<@ToxicFrog>
(or just write a bash script to do it)
17:12
< celticminstrel>
Or a Python script.
17:12
< Namegduf>
Writing Python when you're just calling out to system utilities would be ugly
17:13
< celticminstrel>
Well, I can't seem to get date to work...
17:16
<@ToxicFrog>
OSX has broken versions of a lot of basic utilities :/
17:29 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
17:31
< celticminstrel>
I think I might have figured date out...
17:32 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
17:39
< celticminstrel>
...okay, so how can I call date from awk?
17:39
< celticminstrel>
Wait, I think I see.
17:41
< celticminstrel>
...well, there's the 'system' awk function, but I don't quite see how that would help.
17:50 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
17:59
<@ToxicFrog>
celticminstrel: { "date -u -d " $1 " +format" | getline newdate; print newdate rest-of-line }
17:59
<@ToxicFrog>
Specifically, 'command | getline var' in awk runs command and stores the output in var.
18:01
<@ToxicFrog>
In practice, if $1 is the date field, you can just date | getline $1; print $0 and it'll re-compute $0 based on the new value of $1
18:07
< celticminstrel>
Awk outputs to stdout?
18:11
<@ToxicFrog>
Yes.
18:27 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Connection closed]
18:41 Derakon [Derakon@Nightstar-1ffd02e6.ucsf.edu] has joined #code
18:41 mode/#code [+o Derakon] by 459AAEB09
18:42
<@Derakon>
I see Reiver has had a run-in with Nickserv.
18:42
<@Derakon>
(And he has a clone)
18:46
< celticminstrel>
Reiver has been 459AAEB09 for quite some time.
18:46
< AbuDhabi>
Why are the new Guest nicks in hexadecimal?
18:53
< Namegduf>
Those aren't NS guest nicks.
18:53
< Namegduf>
They're UIDs.
18:54
< Namegduf>
Everyone who connects gets a unique UID; if you collide in a server split you're forced to UID, rather than disconnected.
18:55 * Derakon eyes his codebase, sighs.
18:56
<@Derakon>
There are 486 references to the "seb" module, by that name. There are an additional 1581 references to it under the name "X".
18:56
<@Derakon>
That's gonna take awhile to clean up. :(
18:57 Attilla [Attilla@Nightstar-dda333fb.threembb.co.uk] has joined #code
18:57 mode/#code [+o Attilla] by 459AAEB09
19:03
< celticminstrel>
And why is Reiver acting the role of ChanServ?
19:04
<@Derakon>
Nobody knows.
19:05 Serah [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code
19:20
<@Derakon>
Question, folks: if I find a feature that nobody is using, but that is not otherwise interfering heavily with the codebase (i.e. it sits like a wart on the outside, as opposed to being strung throughout everything like a cancer), should I remove it?
19:20
<@Derakon>
The feature might theoretically be useful, but in practice nobody ever bothers with it -- for example, applying false color to greyscale images.
19:21
< AbuDhabi>
Hey, once I needed to apply false color to greyscale images, and it took me a long, long while to track down a trial version of software that allowed it.
19:21
<@Derakon>
Keep in mind that even if I remove this, the magic of source control means I can recall it if necessary.
19:22
< Namegduf>
BURN
19:22
< celticminstrel>
If it could theoretically be useful to someone, I see no reason to get rid of it.
19:22
<@Derakon>
The reason would be that it adds cost to updating the module, Celtic.
19:22
< celticminstrel>
How so?
19:23
<@ToxicFrog>
Tag the commit so you can find it again easily, then remove it.
19:23
<@Derakon>
Let's say that I want to refactor the hell out of a module because it's 1131 lines of mind-scarringly horrible Python. If I can cut that down to 1000 lines, then the cost of testing each refactoring just got smaller.
19:28 * Derakon finds the following comment:
19:28
<@Derakon>
# // GL_CLAMP causes texture coordinates to be clamped to the range [0,1] and is
19:28
<@Derakon>
# // useful for preventing wrapping artifacts when mapping a single image onto
19:28
<@Derakon>
# // an object.
19:28
<@Derakon>
Note that GL_CLAMP otherwise does not show up in this module.
19:39
<@Derakon>
Well, by removing code that can never be run, I'm down to 868 lines~
19:47
<@Derakon>
foo = [1,2,3,4,5]
19:47
<@Derakon>
bar = [3,4,5,6,7]
19:47
<@Derakon>
for list in [foo, bar]:
19:47
<@Derakon>
list = list[:2] + list[-1:]
19:47
<@Derakon>
This doesn't actually modify foo and bar.
19:48
<@Derakon>
Seems like there ought to be some way to make a version that does, though.
20:10
<@ToxicFrog>
Sanity check: is XML canonically case-sensitive?
20:10
<@Derakon>
http://xml.silmaril.ie/authors/case/ says yes.
20:11
<@Derakon>
So does http://lists.xml.org/archives/xml-dev/200004/msg00076.html
20:11
<@ToxicFrog>
Bollocks.
20:11
<@Derakon>
I generally prefer case-sensitivity myself, though I couldn't articulate why.
20:11
<@ToxicFrog>
brb, shoving ALLCAPS tags down the jedit devteam's throat
20:12
<@Derakon>
Oogh.
20:12
<@ToxicFrog>
Oh, so do I. The "bollocks" here is that the jedit language mode format is ALWAYS SCREAMING AT YOU.
20:12
<@Derakon>
YAY
20:12
<@ToxicFrog>
Perhaps my first project in Scala should be taking the NEdit syntax mode editing UI and making a JEdit syntax mode editor based on it~
20:13
<@Derakon>
Or you could use vim~
20:13
< celticminstrel>
Are XHTML tags uppercase or lowercase?
20:14
<@Derakon>
HTML is not case-sensitive.
20:14
< celticminstrel>
But XML is.
20:14
<@ToxicFrog>
Yes, but then I'd be using Vim, a far worse fate~
20:14
<@Derakon>
Ah.
20:14
<@Derakon>
XHTML documents must use lower case for all HTML element and attribute names. This difference is necessary because XML is case-sensitive e.g. <li> and <LI> are different tags.
20:14
<@Derakon>
Source: http://www.w3.org/TR/xhtml1/#h-4.2
20:14
<@Derakon>
(Seriously, use Googloe next time, both of you. :p)
20:14
<@Derakon>
Er, Google.
20:35
< McMartin>
Google just gets you the page with the standard.
20:35
< McMartin>
Reading standards is a skill.
20:35
<@Derakon>
Google also tends to give you relevant excerpts from that standard.
20:42
<@ToxicFrog>
This was actually more "I am lazy, and I'm pretty sure someone in here knows the answer off the top of their head".
20:42
<@ToxicFrog>
I didn't expect you to actually go and google it.
20:49
<@ToxicFrog>
JEdit desperately needs a richer set of lexeme names.
20:50
<@ToxicFrog>
Current choices are DIGIT, FUNCTION, INVALID, OPERATOR, MARKUP, LABEL, and four variations each of FOLD, COMMENT, KEYWORD, and LITERAL
21:22 * ToxicFrog plays with XML entity declarations
21:25
<@Derakon>
Ahh, biology research papers. "We could differentially localize distinct NPC components and detect double-layered invaginations of the nuclear envelope in prophase as previously seen only by electron microscopy."
21:58 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
22:14 * celticminstrel does not know what JEdit is.
22:16 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has quit [Connection closed]
22:16 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
22:19
<@ToxicFrog>
celticminstrel: a code editor, sort of like emacs except written in Java instead of Lisp, - lots of addons and + lots of usability.
22:21
<@ToxicFrog>
I am complaining about its syntax hilighting engine, which, while better than most of its contemporaries, is still worse than the gold standard for non-language-aware syntax hilighting, NEdit.
22:21
< celticminstrel>
Non-language-aware?
22:24 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has quit [Connection closed]
22:24 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
22:37
<@Derakon>
Celtic: not written with a single specific language in mind.
22:37
<@Derakon>
So it has to guess based on the structure of the document you're writing what kind of syntax to apply.
22:38 AbuDhabi [annodomini@Nightstar-9eda9802.adsl.tpnet.pl] has quit [[NS] Quit: leaving]
22:39 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has quit [Connection closed]
22:39 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
22:42 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has quit [Connection closed]
22:42 RichardBarrell [mycatverbs@Nightstar-58acb782.cable.virginmedia.com] has joined #code
23:14 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has joined #code
23:24
<@ToxicFrog>
Derakon: actually, it generally guesses based on the extension~
23:25
<@ToxicFrog>
But what I really meant by that was "it doesn't have a semantic understanding of the language"
23:28
< RichardBarrell>
What editor is this that you are talking about?
23:28
< RichardBarrell>
Eclipse or Netbeans or something? But I was under the impression that Eclipse had its own javac built-in, and actually used it competently too.
23:29
<@ToxicFrog>
JEdit, ike I said earlier.
23:29
< RichardBarrell>
Ah. I didn't see, my net connection kept dying out.
23:29
<@ToxicFrog>
It's a general purpose code editor. It has modes for a lot of languages, but it doesn't have understanding of the code, just a set of hilighting and indentation rules based on the lexical structure of the code.
23:31
< RichardBarrell>
JEdit's modes are just regular-expression based, like Vim's, aren't they?
23:32
< celticminstrel>
Okay, so I guess it can't (for example) highlight names that are defined elsewhere in the code?
23:36
< McMartin>
Also, presumably, no code completion or navigation-by-class-and-method.
23:37
< celticminstrel>
Well, if by the latter you mean a drop-down menu or some such thing to jump to a given class-and-method, that does not require semantic understanding of the language, I think...
23:37
<@ToxicFrog>
RichardBarrell: there are some non-regular abilities, but for the most part, yes - you can't go full context-free with it.
23:37
<@ToxicFrog>
celticminstrel: correct, barring the installation of a plugin that does understand the code.
23:38
<@ToxicFrog>
And what McM means, I think, is things like "I am looking at a function call, where is it defined"
23:38
<@ToxicFrog>
Or "I am looking at a function definition, where is it called from"
23:38
<@ToxicFrog>
it has support for that via external tools like ctags, but is limited to what those tools can do.
23:38
<@Derakon>
Man, features like that wouldn't have a hope of working on the code I deal with~
23:39
< McMartin>
ToxicFrog: Actually, no, I meant a breadcrumb treeview that let you browse stuff at a higher level
23:39
< McMartin>
As per MSVS and Eclipse
23:39
<@ToxicFrog>
Aah
23:40
<@ToxicFrog>
I think there're language-specific plugins for that
23:40
<@ToxicFrog>
The editor has a filesystem treeview built in, but that's it
23:40
< McMartin>
(Generally, two dropdowns, the first being "top level" and then a hierarchical list of classes, and then once that's picked, the second becomes a list of methods and fields with warp-to-definition
23:43 shade_of_cpux is now known as cpux
--- Log closed Fri Jun 11 00:00:30 2010
code logs -> 2010 -> Thu, 10 Jun 2010< code.20100609.log - code.20100611.log >