Shallow Thoughts : : Jul
Akkana's Musings on Open Source Computing and Technology, Science, and Nature.
Sat, 28 Jul 2007
It's a small thing, but xchat's blinking text cursor has irritated
me for a while. It's not so much the blink itself that bothers me,
but that it makes the mouse pointer flicker. (I have no idea why
blinking the cursor should make the X mouse pointer flicker,
but it was pretty clear that they were in sync.)
I've also seen fingers pointed at
cursor blink as a laptop battery eater (one more reason the CPU has
to wake up every second or so when it might otherwise have been
idling) though I've seen no numbers on how significant that might
be (probably not very, on most laptops).
Anyway, there are reasons enough to look into turning off the blink.
Xchat is a gtk application, of course. There are lots and
lots of pages on the web telling developers about gtk's
gtk-cursor-blink property (and related properties like
gtk-cursor-blink-timeout) and what they do in at a library
level, so it's clearly possible. But I found nothing about where a
user should set these properties to make gtk find them.
Here's the answer. Add to $HOME/.gtkrc-2.0
(or any other file loaded by $HOME/.gtkrc-2.0):
gtk-cursor-blink = 0
I had to restart X (maybe shutting down all gtk apps would have
been enough) before I saw any effect.
While I was searching, I did find a nice page on
How to disable
blinking cursors in lots of different apps. Its gtk section
didn't seem to do anything here (maybe it only works if a gnome
desktop is running), but it's a good page nontheless,
full of useful advice for turning off cursor blink in other programs.
Tags: linux, gnome
[
20:50 Jul 28, 2007
More linux |
permalink to this entry |
]
Fri, 27 Jul 2007
I don't usually spend a lot of time reading the sides of Diet Coke
cartons, but maybe I should. There's some good scholarly writing
there. For instance, did you know that, according to the Diet Coke
carton,
"It's true. Research shows that all beverages contribute to proper hydration.
That means [ ... ] Diet Coke helps you stay hydrated all day long."
I'm visualizing a big laboratory full of spectacled scientists in
white lab coats, cages full of lab rats with hanging water bottles
filled with hundreds of different beverages. The sign outside
the building says "School of Hydration Science".
I wonder which journals publish the peer-reviewed hydration research papers?
Non-diet Coke cartons have almost the same note,
except they leave out the "Research shows" part. I wonder if that means
the lab rats didn't stay properly hydrated with regular Coke,
so they had to toss those data points out of the final paper?
Tags: humor
[
20:24 Jul 27, 2007
More humor |
permalink to this entry |
]
Wed, 18 Jul 2007
We were heading past the scum pond at Walden West for a quick
afternoon hike when I heard Dave, just ahead of me, make a very loud
and very rude noise.
Or maybe not. He immediately turned around and asked, "Was that you?"
I insisted truthfully that it wasn't.
Weird! We walked on, and behind us we heard more odd noises --
sometimes like machinery, and sometimes like a cow bellowing.
We figured it was part of the summer school at Walden West --
maybe they bring in barnyard animals to show the kids.
But the cow bellowing was still going on when we got back to the
car, and we could tell now it wasn't coming from the school.
It was coming from the pond. A thought occurred to me -- "What
do bullfrogs sound like? Like, maybe, a bull?" I had to go see.
Sure enough, the green, scummy pond was covered with big frogs!
I counted about 9 visible at any one time.
Mostly they were just floating in the scum, but every now and then
one would bellow, or dive and swim somewhere else.
Mostly they ignored us ... except the ones near the edge of the pond.
If we tried to walk up near them and look down on them, they
disappeared underwater immediately. Maybe we looked like a heron
or egret.
I know I'm supposed to hate bullfrogs. They're an invasive species
with a voracious appetite for local species. My bio teacher told us
to kill them on sight if possible (not that we could have done so here
even if we'd wanted to). But I found it fun and unusual to see any frog
at all here ... let alone a frog chorus right in front of us in
broad daylight.
A few photos.
Tags: nature, bullfrog
[
22:44 Jul 18, 2007
More nature |
permalink to this entry |
]
Tue, 17 Jul 2007
I've been a happy csh/tcsh user for decades. But every now and then I
bow to pressure and try to join the normal bash-using Linux world.
But I always come up against one problem right away: word erase
(Control-W). For those who don't use ^W, suppose I type something like:
% ls /backups/images/trips/arizona/2007
Then I suddenly realize I want utah in 2007, not arizona.
In csh, I can hit ^W twice and it erases the last two words, and I'm
ready to type
u<tab>
.
In bash, ^W erases the whole path leaving
only "ls", so it's no help here.
It may seem like a small thing, but I use word erase hundreds of
times a day and it's hard to give it up. Google was no help, except
to tell me I wasn't the only one asking.
Then the other day
I was chatting about this issue with a friend who uses zsh for that
reason (zsh is much more flexible at defining key bindings)
and someone asked, "Is that like Meta-Delete?"
It turned out that Alt-Backspace
(like many Linux applications, bash calls the Alt key "Meta",
and Linux often confuses Delete and Backspace)
did exactly what I wanted. Very promising!
But Alt-Backspace is not easy to type, since it's not reachable from
the "home" typing position.
What I needed, now that I knew bash and readline had the function,
was a way to bind it to ^W.
Bash's binding syntax is documented, though the functions available
don't seem to be. But bind -p | grep word
gave me
some useful information. It seems that \C-w was bound to
"unix-word-rubout" (that was the one I didn't want) whereas "\e\C-?"
was bound to "backward-kill-word".
("\e\C-?" is an obscure way of saying Meta-DEL: \e is escape, and
apparently bash, like emacs, treats ESC followed by a key as the same
as pressing Alt and the key simultaneously. And Control-question-mark
is the Delete character in ASCII.)
So my task was to bind \C-w to backward-kill-word.
It looked like this ought to work:
bind '\C-w:backward-kill-word'
... Except it didn't.
bind -p | grep w
showed that C-W was still bound to "unix-word-rubout".
It turned out that it was the terminal (stty) settings causing
the problem: when the terminal's werase (word erase)
character is set, readline hardwires that character to do
unix-word-rubout and ignores any attempts to change it.
I found the answer in a
bash
bug report. The stty business was introduced in readline 5.0,
but due to complaints, 5.1 was slated to add a way to override
the stty settings. And happily, I had 5.2! So what was this new
way override method? The posting gave no hint, but eventually I found it.
Put in your .inputrc:
set bind-tty-special-chars Off
And finally my word erase worked properly and I could use bash!
Tags: linux, CLI, shell, bash
[
16:22 Jul 17, 2007
More linux |
permalink to this entry |
]
Sun, 15 Jul 2007
I continue to be puzzled by the mysterious
chlorine small that
sometimes wafts through the redwood forests during the warm
days of summer.
It's been fairly noticable for about a month now, though it's
patchy and doesn't occur everywhere.
Today's hike was on a trail called "The Lonely Trail", up above
Woodside. It was just as well that it was lonely: no one could see
Dave and me (mostly me) stopping to sniff bushes and trees and rotting
logs and dirt. But alas, no definite culprit emerged.
It did seem stronger when we were next to tanoak trees, though that
is virtually everywhere in these forests.
Tanoak is short for Tanbark-Oak, or Lithocarpus densiflorus.
It's not a true oak (genus Quercus) and is more closely related
to chestnuts. But it's like oaks in many ways -- the tough, shiny
leaves look a bit like larger versions of our local coast live oak
(though the distinctive veins make it easy to tell the two apart).
The acorns, too, are very similar to those of live oaks.
The smell definitely wasn't coming from the tanoak leaves, but it did
seem stronger near the trunks of some of the tanoaks. I'd always
assumed "tan" referred to color (since there are white oaks, black
oaks, blue oaks and red oaks, none of which are really those
colors). But what if it refers to a tree whose bark is particularly
high in tannic acid? What does tannic acid smell like, anyway?
This would still leave some mysteries. Tanoaks are all over bay area
parks, not just in redwood forests. What is it about the deep, shady
redwood forests which bring out this smell, where it's seldom obvious
in the tanoaks of the valleys or rolling hills? Some interaction
between tanoaks and redwoods, or ferns? Something that only happens
in the shade?
I never found a tree that gave me a clear answer -- I merely picked
up subtle hints of chlorine odor from the trunks of a few trees.
Returning home to the digital world, I learned that
the tanoak tree is indeed very high in tannins, and was extensively
harvested for tanning hides. The local native Americans also used
the acorns for flour, after leaching them to remove the bitter acid.
I found no references to odor from tanoak bark or wood,
but a few pages mentioned that the flowers, which hang in catkins,
have a foul odor. No one goes into specifics on this odor.
I didn't see many flower catkins on today's hike,
but they're listed as appearing in June through October.
Looks like I have a research project lined up for the next outing.
Tags: nature, chlorine
[
22:30 Jul 15, 2007
More nature |
permalink to this entry |
]
Tue, 10 Jul 2007
I got email from a recruiter yesterday
alerting me to opportunities for "Engineers who are interested to
work in a fast paste environment with talented and passionate people!"
The email came from a reputable place and was well targeted,
not random spam like a lot of recruiter email.
I don't know, though ... It's good that they're talented and passionate,
but I've seen (and debugged) code that resulted from fast pastes,
and the result is often not pretty.
I think I'd prefer to work in a place where they designed the code
from scratch rather than just pasting it quickly.
Tags: humor
[
15:52 Jul 10, 2007
More humor |
permalink to this entry |
]
Wed, 04 Jul 2007
I like buying from Amazon, but it's gotten a lot more difficult since
they changed their web page design to assume super-wide browser
windows. On the browser sizes I tend to use, even if I scroll right
I can't read the reviews of books, because the content itself is wider
than my browser window. Really, what's up with the current craze of
insisting that everyone upgrade their screen sizes then run browser
windows maximized?
(I'd give a lot for a browser that had the concept of "just show me
the page in the space I have". Opera has made some progress on this
and if they got it really working it might even entice me away from
Firefox, despite my preference for open source and my investment in
Mozilla technology ... but so far it isn't better enough to justify a
switch.)
I keep meaning to try the
greasemonkey extension,
but still haven't gotten around to it.
Today, I had a little time, so I googled to see if
anyone had already written a greasemonkey script to make Amazon readable.
I couldn't find one, but I did find a
page
from last October trying to fix a similar problem on another
website, which mentioned difficulties in keeping scripts working
under greasemonkey, and offered a Javascript bookmarklet with
similar functionality.
Now we're talking! A bookmarklet sounds a lot simpler and more secure
than learning how to program Greasemonkey. So I grabbed the
bookmarklet, a copy of an Amazon page, and my trusty DOM Inspector
window and set about figuring out how to make Amazon fit in my window.
It didn't take long to realize that what I needed was CSS, not
Javascript. Which is potentially a lot easier: "all" I needed to do
was find the right CSS rules to put in userContent.css. "All" is in
quotes because getting CSS to do anything is seldom a trivial task.
But after way too much fiddling, I did finally come up with a rule
to get Amazon's Editorial Reviews to fit. Put this in
chrome/userContent.css inside your Firefox profile directory
(if you don't know where your profile directory is, search your disk
for a file called prefs.js):
div#productDescription div.content { max-width: 90% !important; }
You can replace that 90% with a pixel measurement, like 770px,
or with a different percentage.
I spent quite a long time trying to get the user reviews (a table with
two columns) to fit as well, without success. I was trying things like:
#customerReviews > div.content > table > tbody > tr > td { max-width: 300px; min-width: 10px !important; }
div#customerReviews > div.content > table { margin-right: 110px !important; }
but nothing worked, and some of it (like the latter of those two
lines) actually interfered with the div.content rule for reasons
I still don't understand. (If any of you CSS gurus want to enlighten
me, or suggest a better or more complete solution, or solutions that
work with other web pages, I'm all ears!)
I'll try for a more complete solution some other time, but for now,
I'm spending my July 4th celebrating my independance from Amazon's
idea of the one true browser width.
Tags: tech, web, css, mozilla, firefox
[
21:01 Jul 04, 2007
More tech/web |
permalink to this entry |
]