code logs -> 2009 -> Thu, 31 Dec 2009< code.20091230.log - code.20100101.log >
--- Log opened Thu Dec 31 00:00:41 2009
01:19 You're now known as TheWatcher[T-2]
01:22 chintimin [zag@Nightstar-d0088b95.or.comcast.net] has joined #code
01:27 You're now known as TheWatcher[zZzZ]
01:27
< chintimin>
Hi, guys. :)
01:31
< MyCatSchemes>
Hey chint.
01:39
< chintimin>
Hey, MCV.
01:40
< chintimin>
how goes?
01:43
< MyCatSchemes>
Along, kinda.
01:43
< MyCatSchemes>
Er, it's way late and I need sleep. Sorry to run so soon, but 'z' noises.
01:45
< chintimin>
It's nice to see you again.
01:46
< chintimin>
Take care.
01:47
< MyCatSchemes>
Thanks. You too.
01:47 MyCatSchemes [mycatverbs@Nightstar-ba39eab0.bb.sky.com] has quit [[NS] Quit: Leaving]
02:30 * chintimin shakes his head in bemusement
02:30
< chintimin>
Sir Stewart.
02:43 Vornicus-Latens is now known as Phas
02:48 * chintimin wishes he could find someone to give advice on a matter of headphones
02:49
< chintimin>
ah, well. off to coffee with family before they had back to the desert.
02:49
< chintimin>
Thanks for pointing me at this spot, vorn
02:50
< chintimin>
amused to find familiar faces
02:50
< chintimin>
though it's not a large network
02:53 Attilla [The.Attilla@FBC920.DDABA2.BBDFC7.BE7CCD] has quit [Connection reset by peer]
04:01 celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: *hums* Can't stay now!]
04:45
< chintimin>
This is not a fast-moving channel, is it?
05:06
<@Phas>
No.
05:06
<@Phas>
Usually we only talk when we're aggravated at something and then everybody chimes in.
05:36 Phas is now known as Vornicus-Latens
05:56 * jerith rants about undocumented magic.
05:56
<@jerith>
(I don't have the energy for the full rant, so just pretend I ranted it.)
05:57
< Namegduf>
I agree.
05:57
<@jerith>
Although the following log message is somewhat amusing:
05:57
<@jerith>
client BatchProcessingProtocol connection established (HOST:('seriously it is a process this makes no sense',) PEER:('omfg what are you talking about',))
05:58
<@jerith>
(Bonus points if you can tell me what I'm hacking on based on that.)
06:27 Alek [omegaboot@Nightstar-abec3fe3.emhril.sbcglobal.net] has quit [Ping timeout: 121 seconds]
06:33 Alek [omegaboot@Nightstar-5f4513ad.emhril.sbcglobal.net] has joined #code
08:05 AnnoDomini [annodomini@Nightstar-412c2ad4.adsl.tpnet.pl] has joined #code
08:05 mode/#code [+o AnnoDomini] by Reiver
09:42 You're now known as TheWatcher
10:01 MyCatSchemes [mycatverbs@Nightstar-ba39eab0.bb.sky.com] has joined #code
10:07 Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited]
11:26 Attilla [The.Attilla@FBC920.DDABA2.BBDFC7.BE7CCD] has joined #code
11:26 mode/#code [+o Attilla] by Reiver
12:44 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code
15:34 MyCatSchemes [mycatverbs@Nightstar-ba39eab0.bb.sky.com] has quit [[NS] Quit: Leaving]
16:29 * chintimin waves
16:38 * jerith particles.
16:38
<@jerith>
(even though that joke's been done to death here.)
16:39
< chintimin>
oh my good GOD
16:39
< chintimin>
I walk out of one channel
16:39
< chintimin>
into another
16:39
< Namegduf>
XD
16:39
< chintimin>
and it's like I just wrapped over, y'know?
16:39
< chintimin>
So. What WERE you cobbling together, jerith?
16:39
<@jerith>
Still am.
16:40
<@jerith>
An IRC bot that Sucks Less.
16:40
<@jerith>
launchpad.net/eridanus -- it's very early stages so far.
16:41
< chintimin>
Oh christ.
16:41
< chintimin>
haaaate.
16:41
< Namegduf>
Language?
16:41 * Namegduf knows of an existing Perl IRC bot that "Sucks Less".
16:41
<@jerith>
Python.
16:41
<@jerith>
Namegduf: Which bot would that be?
16:42
< Namegduf>
Botnix.
16:42
<@jerith>
Never heard of it.
16:42 * Namegduf shrugs
16:42
<@TheWatcher>
jerith: that'd have to be ERROR: Use of uninitialized value in concatenation (.) or string at .irssi/plugins/modules/WatcherBotCore.pm line 2293
16:42
<@jerith>
Not that I'm an expert or anything.
16:43
<@jerith>
TheWatcher: Context?
16:44
< Namegduf>
That's because most of the silly people just keep using eggdrop, and development of good IRC bots is occasional enough it doesn't spread widely, I think.
16:44
<@jerith>
There's a pretty decent one called ibid (also Python) that I was involved in in its early days.
16:44
<@jerith>
But it doesn't suit my needs.
16:45
<@TheWatcher>
jerith: from another channel a couple of days ago - http://pastebin.starforge.co.uk/87
16:46
<@jerith>
I run a knab, which is the perl-based codebase that ibid is replacing, over in #nightstar_bar.
16:46
<@jerith>
(He's called Boing.)
16:46
<@jerith>
And he's fallen offline. :-(
16:47 * chintimin recalls coding bots for AIM in the 90s
16:47
<@jerith>
TheWatcher: Oh, right. But would a real person have fewer bugs than the bot that's impersonating you?
16:47
< chintimin>
one that would ask you what your favorite band was
16:47
< chintimin>
tell you it liked them, too, but back before they got popular
16:47
< chintimin>
and that their latest album sucked
16:47
< chintimin>
then log the responses
16:48
< chintimin>
...simplest turing test ever.
16:49
< chintimin>
I was a bored CS major then
16:49
< chintimin>
before I got the hell away from computers professionally
16:49
< chintimin>
because they suck your SOUL
16:50
<@TheWatcher>
The solution to that, of course, is to use perl.
16:51
<@jerith>
TheWatcher: Is that so that the perl sucks away your soul first?
16:52
<@TheWatcher>
No, it's so the cthulhian horrors your soul gets tainted with infect the computers.
16:52
<@TheWatcher>
¬¬
16:54
<@jerith>
Why the *hell* is getPlugins(IEridanusPluginProvider) returning an IEridanusBrokenPluginProvider in its response?
16:54 Vornicus-Latens is now known as Vornicus
16:56
<@jerith>
Oh. It wasn't invalidating its cache and thought it was a non-broken plugin.
16:56
< chintimin>
...is it a green laser pointer, or a blue one?
16:56
< chintimin>
I hate people.
16:57 * chintimin is buying toys
16:57
<@jerith>
The green ones are brighter.
16:58
< chintimin>
Yeah, but I kinda want one of the blu-ray ones. "ooo new shiny!" sorta thing.
16:58
<@jerith>
And people do, in general, suck. Present company included, although to a lesser extent because you show impeccable taste in IRC channel choice.
16:58
< chintimin>
Unpeckable?
17:00
<@jerith>
Nope. From the Latin "impeccabilis".
17:00
< chintimin>
pecking bill?
17:00
<@jerith>
"im-" as a negating prefix and "peccare", to sin.
17:01
< chintimin>
chicken peccata mundo?
17:01 * TheWatcher eyes chintimin
17:01
< chintimin>
impeccable is a really satisfying word
17:02
<@jerith>
It is. The headmaster of my primary school was particularly fond of it, and frequently used "abominable" on the other end of the scale.
17:02
< chintimin>
I always felt like "abominable" felt a bit... unwieldy.
17:03
< chintimin>
tongue sorta five feet wide, covered in fur sorta word
17:06
< chintimin>
Speaking of diction!
17:07
< chintimin>
and I know this is old news, but SERIOUSLY! Sir Stewart?
17:07
<@jerith>
And why not?
17:08
< chintimin>
No reason, I just hope he can "make it so" other actors will engage their talents on the main screen.
17:08
<@jerith>
Although he's "Sir Patrick".
17:08
< chintimin>
yeah, that.
17:08
<@jerith>
Knights have first names. :-)
17:08
< Namegduf>
You're not fond of Patrick Stewart?
17:09
< chintimin>
Are you kidding? <3 <3 <3
17:09
< Namegduf>
Ah.
17:09
< chintimin>
I just can't stop giggling.
17:09
< chintimin>
though I'm still bitter there wasn't a video recording of the race-reversed Othello he starred in
17:09
<@jerith>
Although "Sir Patrick" is usually Patrick Moore for me.
17:12
< chintimin>
I'm tempted to pick up a set of ten of the green lasers and do something tacky with gloves
17:13
< chintimin>
though it'll all end in tears (assuming I can still cry) when I close a hand on accident and catch myself in the corner of the eye with one
17:18
< chintimin>
anyone here have much experience with open-back headphones?
17:20 You're now known as TheWatcher[afk]
17:29
< chintimin>
hrm.
17:30
< chintimin>
gadget shopping is fun.
17:32 MyCatVerbs [mycatverbs@Nightstar-ba39eab0.bb.sky.com] has joined #code
17:32 mode/#code [+o MyCatVerbs] by Reiver
17:32
< chintimin>
Morning.
17:34
<@MyCatVerbs>
Good evening, chint.
17:35
<@MyCatVerbs>
Turns out there's an IRC client in emacs. :)
17:35
<@MyCatVerbs>
Just have to figure out whether or not it's actually useful now, heh.
17:35
<@jerith>
It's less useful than irssi.
17:36
<@jerith>
If you use emacs as an OS, you might like it.
17:37
<@MyCatVerbs>
Well, it's neat. Jury's still out on whether emacs+ERC has much benefit over GNU screen+irssi+vim.
17:37
<@MyCatVerbs>
It's a little neater than Xchat in a few ways, though. ;)
17:42
< chintimin>
Am I in the minority preferring vi? :P
17:42
< chintimin>
just for editing stuffs
17:42
< Tarinaky>
chintimin: I like vim.
17:44
< chintimin>
Yeah, that and vigor.
17:45
<@MyCatVerbs>
chintimin: I still have muscle memory for vi, but I've been eyeing emacs modes with a covetous glint to my cornea for a while now.
17:46 * chintimin nods
17:46
< chintimin>
there was a program called PC Lite I still pull out from time to time
17:46
< Namegduf>
I'm sure there'll be a day when I hail Java and Ruby as the gods of languages, and care not for speed, efficiency, and such attributes.
17:46
< chintimin>
and I was really frustrated when the drivers for Vista didn't support fullscreen console mode apps
17:46
< Namegduf>
But until that day, I find the mere idea of a 30MB text editor so repulsive it could be the best thing ever
17:46
< Namegduf>
And I wouldn't want it.
17:46
<@MyCatVerbs>
Namegduf: grab a copy of v8 and check out how fast Javascript is these days. :)
17:46
< chintimin>
making WordPerfect 5.1 for DOS require DOSBox
17:47
< chintimin>
Java?
17:47
< chintimin>
Java isn't that great.
17:47
<@MyCatVerbs>
Namegduf: I fail to see the issue. I'm running what's probably a 3MB text editor with 27MB of libraries bundled for every programming language worth using.
17:48
< Namegduf>
27MB for like three languages?
17:48
< Namegduf>
No, I kid.
17:48
< Namegduf>
Seriously, though, still seems a bit big.
17:48
< Namegduf>
I mean, if you count in regex libraries and stuff, that adds for some, but not that kind of size.
17:49
<@MyCatVerbs>
I don't know what it all is, Namegduf.
17:49 * Tarinaky dus /usr/include and gets back 276M.
17:49
<@jerith>
The size of an editor isn't really important as long as it's responsive and has the necessary features.
17:50
<@MyCatVerbs>
Namegduf: vim these days comes with a 1.9MB executable.
17:51
<@MyCatVerbs>
About 7MB of .vim scripts kicking around various places in the filesystem.
17:51
< Namegduf>
I appreciate that, pragmatically, but I still find it emotionally repulsive. I also dislike the emacs control scheme, so I'm not losing much, I guess.
17:51
<@MyCatVerbs>
I think about 3-4MB of plain-text documentation.
17:52
<@MyCatVerbs>
emacs' ELF executable comes out at ~6.5MB on my box.
17:52
<@MyCatVerbs>
It links to a *lot* of stuff. For example, are you familiar with DBUS?
17:52
< Namegduf>
Yes, and I see no reason why my text editor has need to use it.
17:53
<@MyCatVerbs>
Silly Namegduf, emacs isn't just a text editor. :)
17:53
< Namegduf>
Yeah, it's an inferior version of lots of other things.
17:53
< Namegduf>
Like a giant swiss army knife.
17:54
<@MyCatVerbs>
That's Unix you're insulting there, boy. ;P
17:54
<@jerith>
Emacs and vim are both superb editors, but they have very different philosophies.
17:54
< Namegduf>
Not really, UNIX isn't making one omniprogram which is inferior at lots of tasks.
17:54
< Namegduf>
(Unless people want to seriously argue that the emacs mail client is the best thing ever or such)
17:54
<@jerith>
Emacs says "mould me to your will! I am yours to command!"
17:55
<@jerith>
And vim says "use my features! I can do all this call stuff!"
17:55
< Namegduf>
I already have something to mould to my will. It's called a programming language.
17:55
< Namegduf>
Or, hell, my environment in general.
17:55
<@jerith>
Namegduf: Which is about 80% of what emacs is.
17:55
< Namegduf>
I want a nifty mail client? I will *run a separate mail client of my choice*.
17:55
<@jerith>
Except it's optimised for editing.
17:56
< Tarinaky>
It gets a little bit silly sometimes. Like tiling wms. You could spend a day setting up layouts for every permutation of program you might run at the same time... Or you could just drag the window somewhere and do some work.
17:56
<@jerith>
gnus wins because you have the full power of emacs at your fingertips to write your mail instead of the crappy window that only does copy/paste and even those are bound to crappy keys and can't be changed.
17:57
< Namegduf>
Is that serious or not?
17:57
<@MyCatVerbs>
Namegduf: I was more arguing that emacs does with libraries something close to what Unix does with distinct programs.
17:58
<@MyCatVerbs>
Yes, that's serious. Most mail clients have goatblowingly poor editors. The only ones which don't are terminal clients like mutt or pine which let you shell out to vim. :P
17:58
<@jerith>
Namegduf: Very serious.
17:59
<@jerith>
I don't use gnus for my mail, but I frequently write my mail in emacs and then paste it into gmail.
18:00
<@jerith>
I do that with a lot of web-based stuff, actually.
18:01
<@jerith>
I've grown used to even the tiny subset of emacs' power that I use, and not having it available to me is frustrating.
18:01
< Namegduf>
MyCatVerbs: My view on that is "Okay, cool, but you've brought me a miniature environment thing where I wanted a text editor. I already have one, and I like it as a whole better."
18:01
< Namegduf>
IOW, emacs as an editor probably fails and is really heavy, and is best considered as an environment as a whole, instad.
18:01
< Namegduf>
*instead
18:02
< Namegduf>
Unless you really like its editing features, I guess.
18:02
<@jerith>
emacs as an editor work really well *because* it's a whole environment.
18:02
<@MyCatVerbs>
jerith: if you're using Firefox, have you tried the "It's All Text" extensions?
18:02
<@MyCatVerbs>
s/extensions/extension/
18:03
<@jerith>
I'm using "View Source With", which lets me edit textboxes in an editor of my choice.
18:03
<@jerith>
Namegduf: I can write a little function to do something, and have it available to other little functions I write to do things.
18:04
<@MyCatVerbs>
Run emacs --daemon, install "It's All Text", tell IAT that your editor is "emacsclient -c". The extension puts up a purple "Edit this!" box at the bottom left of every HTML textarea. It also shows up on the right-click context menu on textboxes.
18:04
< Namegduf>
jerith: Me too, given a scripting language and something I want to do.
18:04
< Namegduf>
jerith: Procedural programming is awesome
18:04
<@MyCatVerbs>
Namegduf: now imagine that your scripting language is available while you're editing...
18:05
< Namegduf>
MyCatVerbs: I can shell out.
18:05
<@MyCatVerbs>
For instance, imagine vim with a scripting language that sucked less than vimscript. Wouldn't that be nice?
18:05
<@jerith>
Namegduf: I then bind my little function to some keys and use it as if it were a builtin.
18:05
< Namegduf>
I refuse to use Vimscript, so yeah.
18:05
< Namegduf>
It's ugly as sin.
18:05
<@jerith>
You can do this with vim as well, but it's crap.
18:05
< Namegduf>
Yeah, I was going to say "I was sure you could bing external things to keys in vim"
18:06
< Namegduf>
Does emacs use a real language, or its own one?
18:06
<@jerith>
Of course, I almost never have to write these little functions myself. Other people have already done so for me.
18:06
< Namegduf>
Right, as is common.
18:06
< Namegduf>
Heard of Perl?
18:06
< Namegduf>
It's really awesome for that stuff.
18:06
<@jerith>
Namegduf: elisp, which is its own weird lisp dialect.
18:06
< Namegduf>
jerith: Ewww.
18:06 * Vornicus cannot stand emacs because nothing is where he thinks it should be.
18:07
<@jerith>
Vornicus: That's the beauty of emacs. You can rearrange it all. (But it takes a bunch of effort.)
18:07
< Tarinaky>
alias emacs=vim
18:08
< Namegduf>
Vornicus: There's definitely that factor.
18:08 * Tarinaky hides.
18:08
<@jerith>
By the way, I'm not saying you should all use emacs. I'm merely refuting your arguments against it. :-)
18:08
< Namegduf>
jerith: Not really, you're just going "scriptable editors are awesome, and elisp beats vimscript"
18:09
<@jerith>
Am I wrong?
18:09
<@Vornicus>
I've also never really needed a script in my editor
18:09
< Namegduf>
I don't see how it beats my point that, when comparing something as an editor, only its qualities related to being an editor are relevant.
18:09
< Namegduf>
It might be that emacs as an editor in your existing environment sucks, but if you replace your existing flow with emacs entire, it's awesome.
18:09
< Namegduf>
But they're separate comparisons.
18:09
<@jerith>
Namegduf: Being arbitrarily extensible *is* a quality related to being an editor.
18:10
< Namegduf>
jerith: Only in as much as it assists the editing capabilities and I have a useful application for it.
18:11
<@jerith>
Because it's easier for me to define a small but nontrivial transformation function and apply it to a bunch of text (which happens to be code most of the time) than it is to do it manually or use external tools.
18:12
<@jerith>
If you don't like emacs because it make you play sequences of chords on your keyboard, that's an entirely reasonable matter of taste.
18:12
< chintimin>
jerith: fucking hell
18:12
< chintimin>
did you honestly just bring up lisp?
18:13
< Namegduf>
That's fine. I'm not sure how it compares to my current process, which would probably involve... I don't know, I'm not sure what small but non-trivial things can't be expressed in regexes.
18:13
<@jerith>
But not liking it because it's highly scriptable is a bit silly.
18:13
< Namegduf>
That's not quite what I'm doing, though.
18:13
<@jerith>
chintimin: I brought up elisp, actually.
18:13 * chintimin grins
18:13
< Namegduf>
I'm not not disliking it because it's highly scriptable.
18:13
< chintimin>
I HOPE it's improved.
18:13
< chintimin>
I really really really hate lisp.
18:14
< Namegduf>
That is to say, I don't view "highly scriptable" in an editor as an automatic "oh, it's awesome then"
18:14
< Namegduf>
It's merely another factor in the comparison, and I don't think a particularly huge one.
18:14
<@jerith>
Do you hate lisp because it sucks or because you don't grok it? ;-)
18:14
< chintimin>
I hate lisp because it's clunky and takes a lot of time to take a chunk of work and repurpose it
18:15
<@jerith>
Namegduf: And that's where we differ. I script my editor a lot, you don't.
18:15
<@jerith>
You probably do a lot of things I don't. do.
18:15
<@jerith>
chintimin: That's almost certainly because you're working on bad lisp.
18:16
<@jerith>
The language itself isn't particularly horrible. I *can* be mind-bogglingly elegant.
18:16
<@Vornicus>
Actually the only things I ever did in a text editor that I decided I needed a script for I realized I could batch.
18:16
< Namegduf>
There's a "bad lisp" joke in there.
18:16
<@jerith>
Vornicus: Most of the "scripts" I use are recorded keyboard macros.
18:16
<@jerith>
Which I sometimes dump to a function and edit slightly.
18:17
< Namegduf>
Pretty sure you can do that in vim.
18:17
< Namegduf>
Record mode and such.
18:17
< Namegduf>
Not played with it much.
18:17
< Namegduf>
When the commands are single keypresses, and I use regexes for almost all sweeping changes...
18:17
<@jerith>
Namegduf: As far as I know, that can't easily be edited. ICBW.
18:17
< Namegduf>
Needing a multiline repeated operation is an exceptional event.
18:17
< chintimin>
Jerith: Quite possibly! I mean, I DID wash out of CS in disgust of the field. :)
18:19
<@jerith>
I operate on multiline things all the time.
18:19
< Namegduf>
Well, everyone does.
18:19
<@jerith>
Usually reformatting logs ot something.
18:19
< Namegduf>
I just rarely need repeated multiline changes in several places.
18:19
< Namegduf>
Log lines, for example, are generally self contained.
18:20
< Namegduf>
Unless you have really weird logs.
18:20
<@MyCatVerbs>
I've done that in vim all the time.
18:20
<@jerith>
Mutliple lines for a single request.
18:20
<@MyCatVerbs>
q<register> type some crap q
18:20
<@MyCatVerbs>
Then @q to invoke.
18:20
< Namegduf>
There's that, too, yeah.
18:20
<@MyCatVerbs>
Very useful when you want to do a mechanical transformation on several hundred lines. 100@<register> wins.
18:21
<@jerith>
Something like "select all lines with the same request id as the next line you see that contains this string and move it to the bottom of the buffer".
18:25
<@jerith>
*move them
18:26
< Namegduf>
Yeah, I'd probably do that manually, unless I had to do it repeatedly.
18:26
< Namegduf>
/<id>, quick line count, d<lines>d, G, p
18:26
< Namegduf>
Probably much faster ways of doing it, but that's just how I'd do it offhand.
18:27
<@jerith>
The lines aren't necessarily consecutive, which makes it a pain.
18:27
< Namegduf>
Ah.
18:27
<@jerith>
That's one of the times when I edit the thing, actually.
18:28
<@jerith>
I build a script for "collect a line with this request id" and then call it repeatedly from the other one.
18:28
<@jerith>
It's the kind of thing I used to do in a Python script.
18:29
<@jerith>
But it's about an order of magnitude quicker this way, because emacs gives you all the text editing tools already.
18:29 * jerith shrugs.
18:31
<@jerith>
I was a vimmer for a long time. I still use it on remote machines, other peoples' boxen and anywhere else I don't have my own emacs available.
18:32
<@jerith>
And I still know it deeper than about 80% of people I know who use it as their primary editor, despite only having scratched the surface.
18:32
<@jerith>
(I find that a bit scary, actually.)
18:35
<@MyCatVerbs>
jerith: join the, um. Heh.
18:35
<@MyCatVerbs>
Given that most vim users don't seem to bother much with q and @, I think we might have something in common there soon enough.
18:36
<@jerith>
Most vimmers I know don't even use A and D.
18:37
<@MyCatVerbs>
Are you serious? *blinkblink*
18:37
<@jerith>
And one of the things that annoys me a *lot* whenever I write code using vim is the lack of a decent "comment region" command.
18:38
<@jerith>
MyCatVerbs: Very. Although that's not as true anymore, since I tend to piont that kind of thing out to them.
18:38 You're now known as TheWatcher
18:39
<@jerith>
Maybe A and D are somewhat extreme. Perhaps df<whatever> is a better example.
18:39
<@MyCatVerbs>
What do you mean by comment-region? Can I mark a region and hit a key to have it all commented or uncommented in one shot?
18:39
<@jerith>
Yes.
18:39
<@jerith>
In emacs it's M-;
18:39
<@MyCatVerbs>
I almost never used df<character>. Usually I was doing for dt( or dt; instead. :)
18:39
<@MyCatVerbs>
s/doing/going/
18:41
<@jerith>
Well, dt<whatever> as well.
18:42
<@MyCatVerbs>
There's something funny about accidentally starting vim within M-x shell. Damn muscle-memory.
18:42
<@jerith>
In emacs that's actually 'comment-dwim' which uncomments if the whole region is a comment, otherwise it comments.
18:43
<@MyCatVerbs>
Oh, nifty.
18:43
<@jerith>
That's one of the nifty little features of a gobsmackingly extensible editor.
18:44
<@jerith>
Your language major mode defines its own comment function and adds it to the appropriate hook.
18:44
<@jerith>
Then comment-dwim Just Works. (Assuming you don't screw up your comment function or whatever.)
18:44
<@MyCatVerbs>
Neat.
18:45
<@jerith>
I may be lying about the details. I haven't actually done that kind of thing in a while.
18:46
<@MyCatVerbs>
Happens. Hrmn, how important is C-u?
18:46
<@MyCatVerbs>
I'm tempted to bind it to kill to the start of the current line, and just use M-0 through M-9 for command repetition.
18:47
<@jerith>
I don't use it often, but it's not just for repitition.
18:47
<@MyCatVerbs>
Also, is there any way to scan the current keybindings so that I don't do something silly like bind a key myself that's already bound?
18:47
<@MyCatVerbs>
Ah, fair enough, will leave it alone then.
18:47
<@jerith>
'C-u <some numbers> C-x f' sets your wrap width.
18:48
<@MyCatVerbs>
It's not like C-a C-k is slower for deleting the whole line.
18:48
< chintimin>
Besides?
18:48
< chintimin>
If you try and reset your controls
18:48
<@MyCatVerbs>
Oh really? Is it only for numerical arguments, though?
18:48
< chintimin>
you just know it'll be a year before your brain catches up to the new setup
18:48
<@jerith>
I think it's only numeric. I'm not sure.
18:48
<@MyCatVerbs>
Not in this case, chint. I'm setting things up concurrently with learning them.
18:49
<@jerith>
chintimin: The whole idea behind emacs is making it malleable. It must fit what's comfortable for you, not the other way around.
18:49
<@MyCatVerbs>
To a certain extent, I'm trying to get emacs to mimic how libreadline works, since I'm used to readline.
18:49
<@Vornicus>
I've never even begun to figure out enough emacs to make it do anything at all that I want.
18:49
< chintimin>
MCV: Ah, yes.
18:50
<@jerith>
MyCatVerbs: With a few small exceptions, readline works quite like emacs.
18:50
< chintimin>
jerith: No, MCV got what I meant
18:50
<@Vornicus>
It took me 20 minutes to figure out how to save.
18:50
< chintimin>
Muscle memory etc.
18:50
<@jerith>
Vornicus: It's nontrivial effort to learn that stuff. :-/
18:50
< chintimin>
like, you change keybindings, and then no matter how much more "intuitive" your new setup is, you keep trying to use the old one when you're not paying attention
18:51
<@jerith>
chintimin: No, I get it too. I was coming from the other direction: I already have muscle memory that emacs must fit.
18:51
<@jerith>
If you're inconsistent, nothing can help you.
18:52
< chintimin>
Hm?
18:52
< chintimin>
Oh. yeah, well.
18:52
< chintimin>
most of us are inconsistent when we try to change from something we know to something we don't on hotkeys
18:52
<@jerith>
If you sometimes hit C-w for kill-region and sometimes hit it for kill-word-left...
18:53
<@Vornicus>
(my muscle memory is large; I already have bindings for more than half the letters, for text editors.)
18:53
<@jerith>
I HATEHATEHATE having to use apps that have dangerously different keybindings that cannot be changed.
18:54 * chintimin nods
18:54
<@jerith>
I'm particularly looking at everything that makes C-w "obliterate this window and everything I had in it".
18:55
<@MyCatVerbs>
jerith: oh the *rat bastards*.
18:55
<@TheWatcher>
*cough*seamonkey*cough(
18:55
<@MyCatVerbs>
Thank you, every webbrowser on Earth.
18:55
<@Vornicus>
that's actually my binding for C-w, usually
18:55
<@MyCatVerbs>
Vornicus: ahahahah! But good! Good for you. :)
18:55
<@jerith>
There's a hack for gnome-based stuff to redefine it, but you need to edit magic configs.
18:55
<@Vornicus>
(except most things bug me to save)
18:56
<@Vornicus>
(including web browsers)
18:56 * TheWatcher now keeps a patch handy, and applies it to every mediawiki system he installs, so that it requires confirmation to close edit windows >.>
18:56
<@jerith>
Vornicus: C-w is kill-nonwhitespace-left in bash and kill-region in emacs.
18:57
<@jerith>
I use both of those *far* more than I use any of the things that redefine that.
18:57
<@Vornicus>
Kill-region?
18:58
<@Vornicus>
YOu mean select, backspace?
18:58
<@jerith>
What most editors call "cut".
18:58
<@Vornicus>
ah
18:58
<@MyCatVerbs>
Control-space leaves a "mark" at the current location. Scroll to a new position, and C-w cuts everything in between the two places. (Yes, there's a highlight).
18:58
<@jerith>
The region is the text between point (where the cursor is) and the most recent mark (set with C-<space>).
18:59
<@jerith>
The highlight is configurable.
18:59 * Vornicus wonders why not just use shift to tell it that we're highlighting.
18:59
<@jerith>
Some systems default it to off.
18:59
<@jerith>
Vornicus: Because that interferes.
18:59
<@Vornicus>
with.....?
18:59
<@MyCatVerbs>
Personally, I immediately rebound C-w to kill-left-word and used C-x C-k for kill-region.
18:59
<@MyCatVerbs>
Actually, emacs seems to do shift+arrow keys too.
19:00
<@jerith>
With the myriad of other navigation commands available.
19:00
<@MyCatVerbs>
Doesn't work with the real navigation commands, but it's fine.
19:01
<@MyCatVerbs>
The rationale for C-w leaving a mark is so that you can use all of the other fancy navigation commands - forward/backwards by sentence, word, line, whole line, et cetera - and you don't need to have three keys held down all the time.
19:01
<@jerith>
Vornicus: I can say "C-<space> C-s <search text> <enter> C-w" to delete from here to the place I found the text.
19:01
<@MyCatVerbs>
Er, C-space, I mean.
19:02
<@jerith>
And there are all sorft of other things you can do with the region.
19:02
<@MyCatVerbs>
jerith: (global-set-key [?\C-=] 'other-window) seems to be necessary to preserve my sanity.
19:02
<@jerith>
vim does this the other way around, generally.
19:03
<@MyCatVerbs>
I find it quite neat that both vim and emacs have settled on roughly the same solution for copypasta - that deletions affecting more than one character at a time act like cut instead.
19:03
<@jerith>
<command> <navigation> rather than <set point> <navigation> <command>
19:03
<@MyCatVerbs>
s/vim/vi/, I mean.
19:03
<@jerith>
Although a lot of vim :commands take a visual-mode range to operate on.
19:04
<@MyCatVerbs>
Handily, vim adds visual-mode. v <navigate> <command>. ^^
19:05
<@jerith>
As an aside, one of the initial reasons I switched away from vim was the location of <escape>.
19:06
<@MyCatVerbs>
Really? I got into the habit of hitting control-[.
19:06
<@jerith>
It's awkward to reach, so I tend to stay in insert mode even when I'm not inserting.
19:06
<@MyCatVerbs>
My favourite keybinding that requires only both little fingers. ^^
19:06
<@jerith>
MyCatVerbs: That's just as awkward, and needs both hands.
19:07
<@jerith>
Or a keyboard with right-control and emacsesque contortions.
19:07
<@MyCatVerbs>
I don't find it awkward myself. But aren't both your hands already on home row?
19:08
<@jerith>
Not if I'm typing with a mug of tea in one hand.
19:08
<@jerith>
(That doesn't work so well with emacs either, though.)
19:09
<@MyCatVerbs>
Generally I type at home row with my pinkies stretched out to left capslock (rebound to control, of course. Did you think I was some kind of *barbarian*?) and the right hand punctuation block, respectively.
19:10
<@jerith>
If I rebound capslock to escape, vim's more usable.
19:10
<@MyCatVerbs>
And I amortise my tea consumption over large glugs. ;)
19:10
<@jerith>
But then capslock wouldn't be control.
19:10
<@MyCatVerbs>
That's not a bad idea. I still find C-[ convenient, though.
19:10
<@jerith>
I tend to sip my tea while reading, then occasionally edit something without putting it down.
19:11
<@MyCatVerbs>
Fair enough.
19:30
<@Vornicus>
My usual typing arrangement is home row with the right hand shifted left.
19:30
<@jerith>
But then Vorn has an assortment of facetentacles at his disposal.
19:31 Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code
19:32
<@Vornicus>
You would not believe how difficult it is to get a facetentacle to not fatfinger.
19:32
<@Vornicus>
er, fattentacle.
19:32
<@jerith>
Don't you have a High Priest In Charge Of Custom Tentacleboards?
19:34
<@Vornicus>
...I will as soon as I write the job posting...
19:37
<@MyCatVerbs>
That is interesting. I had not realised that 0 was truthy in elisp.
19:37
<@MyCatVerbs>
Apparently only nil is ever false?
19:37
<@jerith>
I believe so. I don't actually recall.
19:38
<@jerith>
I generally treat elisp more like lego that code.
19:38
<@jerith>
*than
19:38
<@jerith>
toenails-in-porridge lego, but still.
19:39
<@MyCatVerbs>
Hah! Nah, I'm not fond of using languages like lego.
19:39
<@MyCatVerbs>
As far as I'm concerned, either I know "enough" or I know nothing. :)
19:39
<@MyCatVerbs>
In theory I might some day come to know "everything" about some specific language, but I haven't found one small enough yet. :)
19:40
<@jerith>
I tend to ignore it unless I actually need it, at which point I'm generally rearranging existing code.
19:40
<@MyCatVerbs>
I'd rather call than rearrange. Subroutines are a beautiful invention, why forsake them?
19:41
<@jerith>
Well, most of my elisp is either fixing broken modes or editing recorded macros.
19:46
<@MyCatVerbs>
I'm surprised by how many emacs buffers I'm ending up with open.
19:52
<@jerith>
I often have lots.
19:52
<@jerith>
ido-mode is very much your friend.
19:53
<@jerith>
Depending on how your emacs is installed, you may already have it, although it may not be enabled.
20:15 GeekSoldier [Rob@Nightstar-e86e3e0d.ip.cablemo.net] has quit [[NS] Quit: Praise "BOB"!]
20:24
<@MyCatVerbs>
AFAIK I've got completely-default FSFmacs 23.
20:26 You're now known as TheWatcher[afk]
20:37
< Rhamphoryncus>
hum. I've no idea what ido-mode is (I don't use emacs), but reading about it has brought to mind a difference in mentality between emacs and most languages. In emacs to configure something you set a callback that does whatever arbitrary logic you want (within the limits of the interface). With most other languages you set some data, ie a flag, to control different behaviour
20:42 * jerith nods.
20:43
<@jerith>
Well, you use data instead of callbacks for most things.
20:50
< Tarinaky>
Why is it whenever I get a decent amount of code written I have this overwhelming sense of - "My Gods this is crap code. Better delete it all and start again" :/
20:51
<@jerith>
Tarinaky: How much refactoring do you do?
20:52
< Tarinaky>
I've never finished a project.
20:52
< Tarinaky>
:/
20:53
<@jerith>
You can refactor incomplete projects...
20:54
< Tarinaky>
Probably not much then. I tend to just go "GAAH SUCKS DELETE" :/
20:54
<@jerith>
Rechannel that into "GAAH SUCKS FIX". :-)
20:56 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ]
20:56
< Tarinaky>
Blargh. I shouldn't even be doing this. Should be working on exam stuff :/
20:56
< Tarinaky>
I've got like a week to do 3 weeks work. Not. Fun. :/
20:58 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
20:58 mode/#code [+o Vornicus] by Reiver
20:58
<@jerith>
:-/
20:59
< Tarinaky>
Blargh. I'm making myself feel crappy. I need to shut up and stop thinking for a bit.
21:01 * jerith offers a glass of wine?
21:02
< Tarinaky>
I already have whisky.
21:03
<@jerith>
Even better. :-)
21:17
< chintimin>
tarinaky? what's up?
21:17
< chintimin>
wooork.
21:17
< chintimin>
let's hear it
21:17
< chintimin>
dirty details, procastination and doubt
21:18
< chintimin>
^ ^ wait, that's my itinerary
21:31
< Tarinaky>
I guess I'm just feeling stressed out :/
21:37
< chintimin>
Happens.
21:38
< chintimin>
you'll get it done
21:38
< Tarinaky>
I know, I know. But I won';t get it done well :?
21:38
< Tarinaky>
*:/
21:38
< Tarinaky>
And I'm already cutting it fine in terms of grades and stuff :/
21:38
< chintimin>
I hear that.
21:45
< Rhamphoryncus>
jerith: even data feels like a callback in lisp. (setq ido-decorations (quote ("\n-> " "" "\n " "\n ..." "[" "]" " [No match]" " [Matched]" " [Not readable]" " [Too big]" " [Confirm]")))
21:48 * jerith nods.
21:50
< Rhamphoryncus>
Although that's a bad example in any language
21:54
< Rhamphoryncus>
Tarinaky: to repeat what jerith said, refactoring is an important skill. You need to be able to take some existing code, figure out what'd be a much better form, and then incrementally change it over
21:54
< Rhamphoryncus>
The bigger the code base the more important incremental change is
21:55
< Tarinaky>
Rhamphoryncus: I know. Sadly I think I have confidence issues.
21:56
< Rhamphoryncus>
So practise :)
21:56
< Rhamphoryncus>
Next week when you've got more time feel free to take an incomplete project and discuss it here. Put bits on pastebin. We'll gladly give suggestions
22:00
< chintimin>
hmm.
22:00
< chintimin>
street fighter 4 is 10$ on Steam. crazy.
22:06
< chintimin>
tempted - and yet not.
22:06
< Tarinaky>
Rhamphoryncus: To be honest I'm not going to get any proper work done tonight. I can put some up now if you want.
22:06
< chintimin>
now, some of these random indie titles?
22:06
< chintimin>
:)
22:06
< chintimin>
Tarinaky: how much work till the end of the term you still have left?
22:06 Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited]
22:06
< chintimin>
well, fuck. :P
22:06
< Tarinaky>
I've got to do 1 take-home test, revise for 2 exams and write a lab report.
22:07
< Tarinaky>
Aside from the revision it's probably all doable within a week.
22:07
< Tarinaky>
The revision'll be a bitch :/
22:08
< Tarinaky>
'Biophysics' and 'Quantum Devices'. :/
22:09
< chintimin>
gah.
22:09
< chintimin>
what are you majoring in?
22:09
< Tarinaky>
Physics.
22:10
< chintimin>
well, I guess this kind of workload will be something you'll have to get used to
22:10
< chintimin>
crazy, tho
22:12 AbuDhabi [annodomini@Nightstar-585df1e6.adsl.tpnet.pl] has joined #code
22:13
< chintimin>
holy shit this song is annoying. tegan and sara can die in a fire.
22:14 AnnoDomini [annodomini@Nightstar-412c2ad4.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
22:27
<@Vornicus>
<3 Tegan and Sara
22:50 KazWork [kazrikna@Nightstar-55f6a2b4.xen.prgmr.com] has quit [Ping timeout: 121 seconds]
22:54 You're now known as TheWatcher
23:11 KazWork [kazrikna@Nightstar-55f6a2b4.xen.prgmr.com] has joined #code
--- Log closed Fri Jan 01 00:00:42 2010
code logs -> 2009 -> Thu, 31 Dec 2009< code.20091230.log - code.20100101.log >