code logs -> 2010 -> Fri, 19 Mar 2010< code.20100318.log - code.20100320.log >
--- Log opened Fri Mar 19 00:00:38 2010
00:09 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
00:18 You're now known as TheWatcher[T-2]
00:18
<@TheWatcher[T-2]>
night all
00:22 You're now known as TheWatcher[zZzZ]
00:35
<@ToxicFrog>
McMartin: ?
00:35 Orthia [orthianz@Nightstar-1f1176b4.xnet.co.nz] has joined #code
00:40
<@McMartin>
TF: Most official FSF stuff insists on referring to it as "Lose32" or "Woe32" because they all have the mental age of 12
00:44 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
00:44
<@ToxicFrog>
;.;
00:50 Zed_ [Zed@Nightstar-d0088b95.or.comcast.net] has joined #code
00:51
<@McMartin>
Happily, I have just done some more searching about and have determined that I don't have to put up with their shit. Thanks, BSD!
00:52
<@ToxicFrog>
?
00:52 Zed [Zed@Nightstar-d0088b95.or.comcast.net] has quit [Ping timeout: 121 seconds]
00:52
<@McMartin>
was trying to get iconv to build so I could get libxml2 to build, but found some BSD-licensed basic XML code that will do just as well
00:53
< Alek>
hrm.
00:53 * Alek ponders.
00:53
<@McMartin>
Normally I'd just use python but the process barriers are inconvenient.
00:53
< Alek>
just how good is a GeForce 9500 GT?
00:54
<@ToxicFrog>
www.tomshardware.com <-- look for "VGA charts", pick comparison criteria relevant to your intended usage
01:33
< Alek>
hmm
01:33
< Alek>
seems to compare favorably.
01:33
< Alek>
not the best, but above average definitely.
01:34
< Alek>
the whole system seems to be like that. XD
01:34
< Alek>
I figure I'll be lucky to get 2 years out of it. >_>
01:38 Attilla [Attilla@FBC920.398CA6.E1414C.85D335] has quit [[NS] Quit: ]
01:44
<@McMartin>
Stuff like that is why I named my gaming rig "Astatine."
01:44
<@McMartin>
Half life: 2.7 hours
02:03 * gnolam laughs.
03:08 Taki^ [Meh@Nightstar-5c6bd472.consolidated.net] has joined #code
03:33 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: *hums* Can't stay now!]
03:39 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?]
03:41
<@Kazriko>
heh.
03:41 * Kazriko thinks his will last him at least a couple years.
03:41
<@Kazriko>
in 2 years, it'll be like the kind of system I normally build. :)
03:42
<@Kazriko>
I usually go for $100-150 video cards, processors/mb combos that cost less than $250, etc.
03:42
<@Kazriko>
I bought my wife a Geforce 9800 recently. Works well for Folding@Home. :)
03:43
<@Kazriko>
$90...
03:51 Orthia is now known as Reivthia
03:51
<@McMartin>
Astatine is actually damn-near cutting edge.
03:51
<@McMartin>
I don't think I'll have to seriously upgrade it for at least five years.
03:52
<@McMartin>
And if I want to stay reasonable it'll probably only require a few incremental upgrades in a couple years.
03:52
< Reivthia>
Vorn!
03:52
<@McMartin>
(Quad-core i7, 6GB RAM, 1TB drive, GTX 260 card)
03:53
<@Vornicus>
eiv!
03:53
<@Vornicus>
that's not the shift key.
03:53
<@Vornicus>
Reiv!
03:53
< Reivthia>
We are allowed to not care about the degenerate tree, and in fact could have used a linked list or even an array
03:53
<@Vornicus>
It doesn't matter any more anyway, we've written Tree and TreeNode, may as well use them.
03:53
< Reivthia>
Yeah, just sayin'.
03:54
< Reivthia>
So anyway
03:54 * Reivthia just got back from talking to lecturer after seeing tutorial
04:17
<@Vornicus>
Anyway.
04:17
< Reivthia>
Yus
04:18
< Reivthia>
So, we have a Tree and a TreeNode
04:21
<@Vornicus>
And now we have enough to implement the encoder.
04:24
< Reivthia>
Awesome!
04:24
< Reivthia>
So I want to have a class called LZW at last?
04:24
<@Vornicus>
Yes.
04:25
< Reivthia>
Excelent
04:25
<@Vornicus>
--though there's a caveat here! The professor says "bytes" - chars are shorts.
04:25
< Reivthia>
Erk. We will want to change that pretty soon then.
04:26
< Reivthia>
Also, found out today: A functioning LZW alograthm with comments = 75% of the grade
04:26
<@Vornicus>
Yes. Now works.
04:26
< Reivthia>
Rest will be gravy.
04:26
<@Vornicus>
How long do you have?
04:27
<@Vornicus>
and, the char to byte change will bubble down through Tree and TreeNode but that's not a big deal; harder is pulling bytes from a file, I think there's a class for that.
04:28
< Reivthia>
Vornicus: Till next sunday.
04:28
< Reivthia>
So a week.
04:28
< Reivthia>
Is byte a primitive?
04:28
<@Vornicus>
byte is a primitive, yes
04:29
<@Vornicus>
http://java.sun.com/javase/6/docs/api/ <--- here we are.
04:30
<@Vornicus>
...not actually what we want.
04:31
<@Vornicus>
and, fucking frames
04:31
<@Vornicus>
http://java.sun.com/javase/6/docs/api/java/io/FileInputStream.html#read()
04:32
< Reivthia>
woo
04:32
<@Vornicus>
Note that it returns an /int/
04:34
<@Vornicus>
I wouldn't care too much, make Tree and TreeNode work on ints, and just use the -1 it usually returns as a guard.
04:35
<@Vornicus>
actually, no. Don't do that.
04:36
< Reivthia>
Int does not stop at 255 does it
04:36
<@Vornicus>
Pull in data via the array-based read
04:39
<@Vornicus>
This will make your overall loop controls a bit tricky - looking at two levels of loop, one to pull data from your file, one to pull data from the array you put the pulled data in.
04:43
< Reivthia>
Er, OK?
04:43
<@Vornicus>
...don't worry about it yet.
04:44
< Reivthia>
Can we not take an int and convert it to byte, and use byte in the rest of the code?
04:44
<@Vornicus>
Sure, but it's a pain for a few reasons.
04:45
< Reivthia>
OK. So I want to use ints everywhere as my data chunks, in favor of char?
04:45
<@Vornicus>
No, we'll end up...
04:45
<@Vornicus>
using bytes for your data chunks, and using the array-based read() to get the data from the file.
04:49
< Reivthia>
Question: Is it possible to read bytes as a character at all, for testing purposes?
04:51
<@Vornicus>
So where I just say "for c in s:" you'll have something like "len = f.read(b); while (len > 0) { for (int k = 0; k < len; k++) { b[k] = c; lzw } len = f.read(b);}
04:52
< Reivthia>
blarg, okay
04:52
< Reivthia>
Let's do that last, let's get LZW working
04:52
<@Vornicus>
Think you can, just cast it or something
04:52
< Reivthia>
Preferably so I can throw a test string at it and test the string later.
04:52
< Reivthia>
OK.
04:52
< Reivthia>
So, LZW
04:52
<@Vornicus>
LZW
04:56
<@Vornicus>
Step 1 in making lzw work is making sure our root trie node has all our goodies.
04:57
< Reivthia>
OK.
04:57
<@Vornicus>
And at that that we /have/ a root trie node.
04:57
< Reivthia>
Well, we do have that
04:57
<@Vornicus>
....you know I think the best tool right at this moment is a wave.
04:58
< Reivthia>
Interesting suggestion. Can we use pastie a bit longer, use a wave next project?
04:58
< Reivthia>
I want to learn the code, not the interface~
04:58
<@Vornicus>
Okay.
04:59
<@Vornicus>
So, our LZW class has an "encode" function, obviously.
05:01
<@Vornicus>
It will return a list -- well, a vector, I guess -- of ints.
05:04 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
05:05
<@Vornicus>
It will also take some sort of buffer of bytes; I think the InputStream class is your best bet.
05:06
<@Vornicus>
(java.io.InputStream, for the record.)
05:06
<@Vornicus>
http://java.sun.com/javase/6/docs/api/java/io/PipedInputStream.html
05:06
<@Vornicus>
erp
05:06
<@Vornicus>
http://java.sun.com/javase/6/docs/api/java/io/InputStream.html
05:06
<@Vornicus>
That.
05:13
< Reivthia>
hr
05:13
< Reivthia>
hrn
05:13 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has joined #code
05:16
<@Vornicus>
hr hm?
05:22
<@Vornicus>
(this is the easy bit, figuring out what kind of stuff we're throwing around.)
05:30 Rhamphoryncus [rhamph@Nightstar-8931f88f.abhsia.telus.net] has quit [Client exited]
05:52 AnnoDomini [annodomini@Nightstar-57b81212.adsl.tpnet.pl] has joined #code
05:52 mode/#code [+o AnnoDomini] by Reiver
06:07 * Vornicus determines that Reiver is either face first in code or doing something else.
06:11
<@AnnoDomini>
That statement is unlikely to be false.
06:27
< Reivthia>
I was face first in code until I was doing something else~
06:28
< Reivthia>
Sorry, Orthia had the carer that was supposed to show up 3pm monday arrive at 5pm today. I was helping out by pointing out where all the Stuff was.
06:29
<@Vornicus>
Heh
06:32
< Alek>
dual-core (i3 or i5, not sure), 1GB 9500 GT DDR2, 4GB (upgradable to 8), 650W PSU, a brand-new burner and 750GB drive, and 4 old drives and an old optical reader for disc2disc copying. :P
06:32
< Alek>
a total of 1206 GB in drives. >_>
06:33
< Alek>
according to the Explorer.
06:33
< Alek>
2.7GHz dual-core, at that.
06:33
< Alek>
my previous one was like 1.9
06:33
< Alek>
dual.
06:35
< Reivthia>
(She's really nice, actually.)
06:36
< Reivthia>
Anyway: So, I've now changed all data from char key to byte key
06:36
< Reivthia>
I now have a class called LZW which has a public static void main
06:37
< Reivthia>
And I am trying to think what I need to put in it. Presumably, a Tree, which we thus initialise... hm, by a loop. Which just means I have to work out how to increment a byte from 00000000 to 11111111.
06:38
<@Vornicus>
\well we need both Index and the byte
06:39
<@Vornicus>
Oh, and this encoder should be in its own function!
06:39
<@Vornicus>
main should just figure out what the hell's going on with the command line arguments and pass an InputBuffer to encode.
06:40
< Reivthia>
Ah, hm
06:41
< Reivthia>
So I want a class Encoder(), yes? Or perhaps Encoder(<something> data)
06:43
<@Vornicus>
No, you'll want a class LZW with an encode() function
06:43
<@Vornicus>
encode(InputBuffer data), in fact
06:46
< Reivthia>
Aaah, seperate function. Yes, that makes more sense.
06:47
<@Vornicus>
actually I'd have LZWEncoder and LZWDecoder as classes with main() in them and then LZW as something that actually does encoding and decoding.
06:48
< Reivthia>
Hm, LZW doing both encode and decode with no problem?
06:48
< Reivthia>
I had thought it needed to run backwards for one of them.
06:49
<@Vornicus>
LZW is a /class/
06:49
<@Vornicus>
the same way Math is a class.
06:50
<@Vornicus>
Yes, you need to tell it how to do both things, but that's okay, it's big enough for both of them.
06:52
< Reivthia>
Oh. Right.
06:52
< Reivthia>
Awesome.
06:54 GeekSoldier_ is now known as GeekSoldier
06:56
<@Vornicus>
LZW has encode() and decode()
06:56
<@Vornicus>
and possibly pack() and unpack()
06:58
<@Vornicus>
(and maybe a couple of utilities to do things that everything needs)
06:59
<@Vornicus>
anyway. encode is going to need to return a pile of numbers, and we're going to need that pile of numbers to be, uh, sensible to add to.
06:59
<@Vornicus>
well, while it's in the function, anyway
06:59
<@Vornicus>
There should be a simple container that handles that.
07:00
< Reivthia>
There is
07:00
< Reivthia>
ArrayList or something, IIRC
07:00
< Reivthia>
Will need to look it up it's been a while.
07:03
<@Vornicus>
ArrayList is is
07:10
< Reivthia>
OK, so we have a byteData, and a numData ?
07:10
< Reivthia>
Or rawData, compressedData or something...
07:11
<@Vornicus>
Good god stop using "data"
07:12
<@Vornicus>
Maybe once, for the non-encoded stuff.
07:12
< Reivthia>
OK, so what do we call the encoded
07:12
<@Vornicus>
how about "encoded"
07:13
< Reivthia>
rawData, encoded could work. (This helps solve any confusion as to what the 'data' is.)
07:14
<@Vornicus>
or just raw and encoded
07:22
< Reivthia>
OK
07:27
< Reivthia>
And one is ArrayList encoded, the other InputStream data
07:30
<@Vornicus>
Right
07:30
<@Vornicus>
Though one is an argument
07:32
< Reivthia>
ArrayList<Integer> encoded, anyway
07:33
<@Vornicus>
We're also going to need our trie. I called this one codes_root.
07:34
<@Vornicus>
(but you can call it something else)
07:37
<@Vornicus>
THen you need to fill that in. you're going to want to start your codes at 1 -- 0 should be special -- and you need to start at Byte.MIN_VALUE for your bytes
07:38
<@Vornicus>
And unfrotunately I need sleep.
07:38
< Reivthia>
No problem, nini Vorn
07:39
< Reivthia>
Today was kind of shot to hell with chaos everywhere.
07:39
< Reivthia>
... why start at 1? That hurts your compression efficiency.
07:39
<@Vornicus>
You have my LZW code, right?
07:39
<@Vornicus>
You need a stop code.
07:39
< Reivthia>
Surely that's "You've run out"
07:40
< Reivthia>
null makes a pretty good stop code~
07:40
<@Vornicus>
Later you may also need a clear code. Certainly easier than trying to measure compression efficiency /while in your packer/
07:40
<@Vornicus>
unpacker, that is
07:41
<@Vornicus>
And the main reason you need a stop code is that you won't end on a byte boundary anyway.
07:42
< Reivthia>
Hm. I'd had the impression we were expected to do the efficiency measurement while in packer. Of course how one measures that could be interesting.
07:44
<@Vornicus>
I don't think you can do it straight in the packer - you need a clear code to tell it when it should start over.
07:46
<@Vornicus>
(your packer /does/ know what index value the enc/dec would have gotten to by now, and needs to use that to figure out how big a thing it should pack/unpack, but...)
07:47
< Reivthia>
OK
07:47
<@Vornicus>
Stop codes are technically somewhat less important than clear codes, but you're gonna need at least one.
07:47
< Reivthia>
How about we worry about that when we get there
07:48
<@Vornicus>
'k
07:48
< Reivthia>
But we're going to have to watch for fencepost errors when we hit the bitpacker~
07:48
<@Vornicus>
Still - start your codes at one and your bytes at Byte.MIN_VALUE and add them to your trie.
07:48
< Reivthia>
("How many bits does it take to encode 4 integers?" "Three.")
07:49
<@Vornicus>
If we need to change it later, it won't be hard.
07:49
< Reivthia>
OK, but we'll keep it for the moment.
07:49
< Reivthia>
Encoder needs to:
07:51
<@Vornicus>
Vorn needs to: slep.
07:51
< Reivthia>
heh, no worries
07:51
< Reivthia>
g'night, Vorn
07:52
<@Vornicus>
Read my python lzw code, see if you can duplicate it.
07:52 Vornicus is now known as Vornicus-Latens
07:56
< Reivthia>
Where is it?
08:49 You're now known as TheWatcher
08:58 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
09:10 BossMan [sarge@32F4F9.E86FD2.1ACE88.9C3EB0] has joined #code
09:10 BossMan [sarge@32F4F9.E86FD2.1ACE88.9C3EB0] has left #code ["Leaving"]
09:30 Orthia [orthianz@Nightstar-b48dcca1.xnet.co.nz] has joined #code
09:32 Reivthia [orthianz@Nightstar-1f1176b4.xnet.co.nz] has quit [Ping timeout: 121 seconds]
09:33 Taki^ [Meh@Nightstar-5c6bd472.consolidated.net] has quit [[NS] Quit: ]
10:23 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection]
10:26 AnnoDomini [annodomini@Nightstar-57b81212.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
10:28 AnnoDomini [annodomini@Nightstar-414651a7.adsl.tpnet.pl] has joined #code
10:28 mode/#code [+o AnnoDomini] by Reiver
10:41 Attilla [Attilla@FBC920.398CA6.E1414C.85D335] has joined #code
10:41 mode/#code [+o Attilla] by Reiver
11:12 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
11:13 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has joined #code
11:20 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
11:26 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has joined #code
11:28 Orth [orthianz@Nightstar-69e81a36.xnet.co.nz] has joined #code
11:31 Orthia [orthianz@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
12:18 Zed_ [Zed@Nightstar-d0088b95.or.comcast.net] has quit [Connection reset by peer]
12:18 Zed_ [Zed@Nightstar-d0088b95.or.comcast.net] has joined #code
12:35 Orth [orthianz@Nightstar-69e81a36.xnet.co.nz] has quit [Ping timeout: 121 seconds]
12:36 Orthia [orthianz@Nightstar-806fefad.xnet.co.nz] has joined #code
12:44
<@AnnoDomini>
How do I set the default browser in debian?
13:29
< Tarinaky>
GNOME or KDE?
13:29
<@AnnoDomini>
Gnome.
13:29
<@AnnoDomini>
I changed it to opera in gconf-editor, but it still opens up the default browser.
13:30
< Tarinaky>
Double check something for me: gnome-open http://www.google.com
13:31
<@AnnoDomini>
Launches epiphany.
13:32
< Tarinaky>
Grr, I've forgotten where my app associations are stored.
13:38
< Tarinaky>
"
13:38
< Tarinaky>
1. In the System menu, open Preferences, then Preferred Applications.
13:38
< Tarinaky>
2. On the Internet tab under Web Browser, choose Opera in the drop-down.
13:38
< Tarinaky>
3. Press Close. "
13:38
< Tarinaky>
Is all I can find atm.
13:38
< Tarinaky>
Sorry.
13:39
< Tarinaky>
"gnome-default-applications-properties" appears to have the settings you want too.
13:43
<@AnnoDomini>
This worked. Thank you.
13:45
< Tarinaky>
a little odd that Opera doesn't have a built in "Want to make it your default browser"
13:46
< Tarinaky>
Maybe you should complain at Erik?
13:46
< Tarinaky>
Mind, those dialogues can be a touch annoying.
13:46
< Serah>
:)
14:02
<@TheWatcher>
Tarinaky: it does, on windows, no idea if the linux version is the same though (Preferences -> advanced -> programs, tick 'check if opera is default browser on startup' and set the appropriate files in the details... window)
14:10
<@AnnoDomini>
There isn't an option like this in Linux.
14:10
<@AnnoDomini>
I checked there first.
14:18
<@Vornicus-Latens>
http://pastebin.starforge.co.uk/156 <--- my LZW encoder and decoder.
14:33 Rhamphoryncus [rhamph@Nightstar-8931f88f.abhsia.telus.net] has joined #code
14:54 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code
15:23 Attilla [Attilla@FBC920.398CA6.E1414C.85D335] has quit [[NS] Quit: ]
16:58 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has quit [Operation timed out]
16:58 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has joined #code
17:04 Tarinaky [Tarinaky@Nightstar-277f357d.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
17:08 Tarinaky [Tarinaky@Nightstar-659c286a.adsl.virginmedia.net] has joined #code
17:51 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has joined #code
18:10 Tarinaky [Tarinaky@Nightstar-659c286a.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
18:12 Tarinaky [Tarinaky@Nightstar-c191ceec.adsl.virginmedia.net] has joined #code
18:35 Vornicus-Latens is now known as Vornicus
18:42 * jerith hurls incoherent and heartfelt abuse at XML, the tools used to manipulate it and the people who use and misuse it.
18:43
< jerith>
There is no way to encode certain characters in XML.
18:43
< jerith>
These characters include \x02 and \x03, which appear in the (malformed) XML I'm trying to work with.
18:44
< jerith>
The tools I'm using (Python's standard library) provide no way to unescape entities, so double-escaping isn't safe.
19:28
< jerith>
Dear ElementTree people,
19:28
< jerith>
Having your Element objects evaluate to False is Not Useful.
19:28
< jerith>
Much love and high-energy projectiles in your direction,
19:28
< jerith>
jerith
19:35 * AnnoDomini rages at Linux graphics software.
19:35
<@AnnoDomini>
I need my MS Paint back.
19:36
<@AnnoDomini>
I've tried Inkscape, GIMP, OO Draw and XPaint and none of these will allow me to perform - without delving into manuals - the simple action of modifying an image from clipboard.
19:37
< Namegduf>
GIMP sucks, but how are you having trouble editing things from the clipboard in it?
19:37
< gnolam>
Well, Inkscape is a vector graphics program.
19:38
<@AnnoDomini>
Namegduf: Exactly one of these allowed me to PASTE FROM CLIPBOARD.
19:38
< Namegduf>
Was it GIMP?
19:38
<@AnnoDomini>
OO Draw.
19:38
< Namegduf>
You fail.
19:38
<@AnnoDomini>
Obviously.
19:38 * Namegduf checks
19:39
< Namegduf>
Well, OO Draw and Inkoth not raster.
19:39
< Namegduf>
*Inkscape
19:39
< Namegduf>
*are both
19:39
< Namegduf>
GIMP:
19:39
< Namegduf>
File->Create->From Clipboard
19:39
< Namegduf>
Or Edit->Paste as->New Image
19:40
< gnolam>
In general, the clipboard is sort of broken under Linux.
19:40
< gnolam>
The only thing it does well is plaintext.
19:40 * AnnoDomini goes install WINE to see if he can run MS Paint.
19:41
< Namegduf>
AnnoDomini: I just gave you two ways to paste in GIMP, and I'm not sure how you missed them.
19:41
< Namegduf>
Two of the other four are not even raster programs, and editing images in OO Draw is a little like editing them in MS Powerpoint
19:41
<@AnnoDomini>
Namegduf: I opened GIMP, created a new image, right clicked and selected PASTE.
19:41
< Namegduf>
Right, yes, that's the wrong way to do it
19:42
< Namegduf>
And that MS Paint makes it the way to do it is a horrible quirk of it.
19:42
<@AnnoDomini>
I think it's the right way, and GIMP just has it wrong.
19:42
< Namegduf>
Cool, but I just gave you two perfectly functional, perfectly sensible in UI ways.
19:42
< Namegduf>
If you want it to work exactly like MS Paint, then by all means, you're going to have to WINE it
19:43
<@AnnoDomini>
I'm just pissed that none of these worked with straightforward approaches.
19:43
< Namegduf>
Two of them were the wrong kind of program to try.
19:43
< Namegduf>
XPaint I've never seen.
19:44
< Namegduf>
The method you're trying AFAIK is only "right" in MS Paint.
19:44
<@AnnoDomini>
And just about every other Windows software I've seen.
19:44
< Namegduf>
I don't know if it "works" in Photoshop, but I strongly suspect it has a proper "paint from clipboard" function.
19:44
< Namegduf>
*paste from
19:46 * AnnoDomini also has a long-standing ire at GIMP. When I was young, I installed it from a CD that came with a magazine ("hey, a graphics editor, I bet it's better than Paint") and the end result was "I'm 12 years old and what is this".
19:51
< Tarinaky>
Eh. I had to learn PSP7 when I was 12.
19:51
< Namegduf>
Yeah, PSP *is* worse than GIMP.
19:51
< Tarinaky>
Namegduf: It gets better.
19:52
< Tarinaky>
I needed it for me and a friend's shitty geoshities page...
19:52
< Tarinaky>
A shitty gundam wing fansite >.>
19:52 * Tarinaky blushes
19:52
< Tarinaky>
Might have been 10.
19:52
< Tarinaky>
Don't remember :/
19:53
< Tarinaky>
PSP is still better than Paint though.
19:54 * AnnoDomini still has his shitty sites. All linked up from the current site, but some exploration is needed to find the Old Site's Old Site's Old Site. :P
19:54
< Tarinaky>
I never actually had mine. I didn't have an internet connection at the time >.>
19:54
< Tarinaky>
So yeah, must have been before 2002.
19:54 * Tarinaky coughs.
19:55
< Tarinaky>
Floppy/Sneaker-net.
19:55
< Tarinaky>
Mind. I guess I at least have props from the fact that one of the first things I used the internet for was to download Rammstein songs.
19:57
< Tarinaky>
>.> <.< >.> Don't judge me.
20:01 * ToxicFrog upreads
20:01
<@ToxicFrog>
Er
20:01
<@ToxicFrog>
In what way does creating a new image and pasting into it not work in GIMP?
20:01
< Tarinaky>
ToxicFrog: Because it won't resize to fit the pasted image.
20:01
<@ToxicFrog>
...yes? Are there any editors that do?
20:02
< Tarinaky>
Wheras Anno wants to use the c:\windows\system32\paint.exe
20:02
< Tarinaky>
*whereas anno wants to use alt f n enter
20:02
< Tarinaky>
Whoops, alt f n ctrl-v enter
20:02
< Tarinaky>
iirc.
20:08
< gnolam>
No, pastes should not change the canvas size.
20:08
< gnolam>
That's just an artefact of MS Paint having a horrible interface for actually changing the size of the canvas.
20:08
< gnolam>
And, you know, not having layers.
20:10
<@McMartin>
In short, the fact that the program doesn't have a thing that does what you want is your fault, not its. >_>
20:10
<@McMartin>
It is also your fault that GIMP does not have a line tool, and you're an idiot for even daring to think that it ought to have one.
20:11
<@AnnoDomini>
Lawl.
20:11
< gnolam>
But I agree with his first statement. I too rage at the state of free graphics software.
20:11 * AnnoDomini gets mspaint running under wine. :)
20:12
< gnolam>
Inkscape is the shining exception, but dammit, a good raster program is sorely needed.
20:12
<@McMartin>
The latter one is really jsut this long-standing sore point for which I have have never forgiven the GIMP team
20:13
<@McMartin>
In its defense, it is possible to do lines.
20:13
<@McMartin>
However, they continue to refuse to admit that they need to recognize that their technique for doing it is not the usual one and so the onus is on them to clear this up.
20:13
<@McMartin>
A 10-page document explaining, with multiple diagrams, where the SHIFT key is was not the problem.
20:13
<@McMartin>
Er, was not the solution.
20:14
< celticminstrel>
Um, GIMP does have a line tool.
20:14
< gnolam>
Mmm. That's the freetard community, distilled.
20:15
<@ToxicFrog>
McMartin: see, I would file "resizes the canvas without warning on paste" as a bug.
20:15
< celticminstrel>
And jerith... what's wrong with '&#x02' and '&#x03'?
20:15
< celticminstrel>
^ plus a closing semicolon, of course.
20:16
< gnolam>
celticminstrel: O RLY?
20:16
< celticminstrel>
?
20:16
< gnolam>
There's a path tool buried somewhere among its usability-challenged icons, but no line tool AFAIK.
20:16
< celticminstrel>
The pencil tool does lines.
20:16
<@AnnoDomini>
ToxicFrog: I agree. That being said, MS Paint is a big, ugly sledgehammer. My graphics use tends to involve huge rocks. It works for me.
20:17
< gnolam>
celticminstrel: if you're talking about shift clicking, it's not the same thing.
20:19
<@McMartin>
It isn't, and the tutorial for it is the most patronizing piece of smug I've ever seen out of the open source community
20:19
< celticminstrel>
I thought it was ctrl-clicking.
20:19
<@McMartin>
This *includes* the GNU official code standards.
20:20
<@McMartin>
(Which among other things refuse to permit you to refer to the Win32 API by its actual name, because "Win" sounds too positive; they suggest "Woe32".)
20:20 * AnnoDomini uses - or at least, has used on Windows - IrfanView for general viewing, cropping and filters; MS Paint for pixel work and crude hacks; and Flash 5 for anything more involved.
20:20
< gnolam>
Even besides the different usage scenarios between a line tool and shift lines, shift clicking does not handle antialiasing or transparency.
20:21
<@McMartin>
http://www.gimp.org/tutorials/Straight_Line/
20:21
< gnolam>
Shift clicking instant lines is useful. There's a reason all the major graphics programs have it. But /it's not the same/.
20:22
<@McMartin>
IrfanView is fantastic. For general viewing, on Linux, gqview is about as agood, but it doesn't have the quick-editing features IrfanView does.
20:23
<@AnnoDomini>
(I mean IrfanView 2.x. The 3.x versions I have aversion to.)
20:23 * McMartin hasn't actually looked in awhile. What's the difference?
20:24
<@AnnoDomini>
Modified interface, and bugs when browsing through directories.
20:24
<@McMartin>
The latter seems like a fairly major issue, yeah
20:25 * gnolam prefers to have his image viewing and image editing separate.
20:26
<@McMartin>
Depends on the edit.
20:26
<@McMartin>
If I've just unloaded a hundred pics off my digital camera, and I'm doing simple crops/rebalances on each in turn, I need a file load interface that's at least as fast as a browser.
20:26 * AnnoDomini frequently makes use of decrease colour depth, whenever some fucktard saves a GIF as a JPG.
20:27
<@McMartin>
Man, people still use GIF?
20:28
<@AnnoDomini>
Sure, why not?
20:28
< gnolam>
Unless it's animated, you use PNG. It's better in every way.
20:28
< Tarinaky>
.gif is OSS now.
20:28
< Tarinaky>
Just as png was getting traction xD
20:29
<@McMartin>
GIF is, IIRC, 8-bit constrained.
20:29
< gnolam>
Unless you use horrible hacks.
20:29
<@AnnoDomini>
But think of the animations!
20:29
< Tarinaky>
I'm also informed that .gif is apparently very good for imaging space on amateur satalites.
20:29
<@AnnoDomini>
The wonderful rotating 3D @.
20:29
< Tarinaky>
No idea if png is or not.
20:30
<@McMartin>
Maybe there is hardware support
20:30
<@McMartin>
Anyway, believe it or not, I had actually managed to forget that animated gifs exist.
20:30
<@ToxicFrog>
o.O
20:30
<@McMartin>
Momentarily
20:30
< Tarinaky>
They are a little... 90s. :/
20:30
<@AnnoDomini>
You blocked them out.
20:31
< Tarinaky>
It's like blinking tags.
20:31
<@McMartin>
Which I have simulated with CSS. >_>
20:31
< Tarinaky>
Or rather, they're both from the same period of ancient history :/
20:31
<@AnnoDomini>
On a tangent, tinypic.com somehow manages animated JPGs. :P
20:31
< Tarinaky>
McMartin: You're an evil. evil. man.
20:31
< gnolam>
And their tags shall blink until the end of days.
20:31
<@McMartin>
It was for science!
20:32
< Tarinaky>
McMartin: ... No ethics comitee would okay that!
20:32
<@McMartin>
Fortunately, CS doesn't have ethics committees.
20:32
<@McMartin>
If they did, the 90s would have looks a lot different.
20:32
<@McMartin>
*have looked
20:32
< Tarinaky>
Yet.
20:32
<@McMartin>
Man, I seriously am not all here yet
20:33
< Tarinaky>
One day they'll be there and people will look back at your work and wonder how nobody stopped you.
20:33
< gnolam>
Hmm. I wonder how much space http://i.imgur.com/9VAk9.png would take as a GIF?
20:33
< Tarinaky>
My eyes hate you for sharing that link.
20:33 * Tarinaky changes the extension from .png to .gif to generate a silly answer.
20:34
<@AnnoDomini>
Behold: http://i34.tinypic.com/353dxr9.jpg
20:34
< Tarinaky>
That's a gif.
20:34
<@AnnoDomini>
I know.
20:34
<@McMartin>
Tarinaky: And if they're good historians, they will conclude "because he followed all the containment procedures of the time.
20:41
< Tarinaky>
Suddenly I'm having visions of a google web spider gaining self awareness and then immediately being driven mad by blink tags on an obscure homepage.
20:42
< Tarinaky>
And that kids is why we're stuck in this nuclear wasteland being hunted by robots.
20:42
<@McMartin>
That spider would have had to cross an air gap
20:43
< Tarinaky>
Air gap?
20:43
< Tarinaky>
I'm willing to bet it could cause a lot of havoc with some PHP/SQL exploits.
20:45
< Tarinaky>
Maybe not a world apocalypse but certainly a start.
21:01
< jerith>
celticminstrel: XML does not allow these characters to exist, even in CDATA blocks or encoded as entities.
21:02
< jerith>
In fact, only a very select few characters below 0x20 are permitted.
21:03
< jerith>
Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
21:03
< jerith>
Legal characters, as per the XML 1.0 specification.
21:03
< celticminstrel>
Huh. I was unaware of that...
21:04
< jerith>
As was I, until it bit me.
21:06
<@McMartin>
Tarinaky: Air gap: That is, the CSS code I wrote was never on a computer connected to the network.
21:07 * McMartin looks at that list.
21:07
<@McMartin>
That looks suspiciously like it only accepts unicode code points
21:07
<@McMartin>
Is there a way to do true binary blocks?
21:08
< jerith>
McMartin: No idea.
21:08
< jerith>
However, the XML I am trying to parse contains &#2; and such in normal text.
21:08
<@McMartin>
Mrrr.
21:09
<@McMartin>
Can you define custom entity names with no real definition and do a sed on it on the way in?
21:09
< jerith>
There isn't a way to legally encode such characters, so I've resorted to replacing it on the way in and decoing every string I read from the parsed XML.
21:09 * McMartin nods
21:10
<@McMartin>
I had to do that for one purported XML format that allowed HTML contents in one of its nodes.
21:10
<@McMartin>
This worked out about as well as one might expect. >_<
21:10
<@McMartin>
Not escaped HTML, mind you.
21:11
< jerith>
The parser I'm rewriting for this thing is PHP and parses it with regexes.
21:12
<@McMartin>
Yeah, that's what the reference implementation for my thing was doing too.
21:13
<@McMartin>
I was trying to feed it into Java, which among other things has an Actual XML Parser.
21:14
< jerith>
Serves me right for believing a thing that claims to be well-formed XML, I suppose.
21:16
< Tarinaky>
McMartin: Fine. Spoil my daydream.
21:18
<@McMartin>
That was for science too~
21:20 Attilla [Attilla@FBC920.398CA6.E1414C.85D335] has joined #code
21:20 mode/#code [+o Attilla] by Reiver
21:36
<@McMartin>
TheWatcher: Incidentally, I started up openssl.exe and checked its loaded DLLs in Process Explorer; 0.9.8m msvc buildpath looks like it did its thing and loaded its libraries.
21:36
<@McMartin>
I'll probably get a chance to try the MinGW build this weekend sometime.
21:54 Zed_ [Zed@Nightstar-d0088b95.or.comcast.net] has quit [Client closed the connection]
21:55 TarinakyKai [Tarinaky@Nightstar-65360360.adsl.virginmedia.net] has joined #code
21:57 Tarinaky [Tarinaky@Nightstar-c191ceec.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
22:20 Serah [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
22:27 Tarinaky_ [Tarinaky@Nightstar-653728cf.adsl.virginmedia.net] has joined #code
22:28 TarinakyKai [Tarinaky@Nightstar-65360360.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
22:34 TarinakyKai [Tarinaky@Nightstar-a4a60cb0.adsl.virginmedia.net] has joined #code
22:36 Tarinaky_ [Tarinaky@Nightstar-653728cf.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds]
23:57 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
23:59
<@McMartin>
...
23:59
<@McMartin>
[inform] vaporware says, "objectloop (x has problem) { vanilla_ice.solve(x); while (dj.revolves(x)) hook.check(); }"
--- Log closed Sat Mar 20 00:00:39 2010
code logs -> 2010 -> Fri, 19 Mar 2010< code.20100318.log - code.20100320.log >