Home
Magus' Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in Magus' LiveJournal:

    [ << Previous 20 ]
    Wednesday, April 30th, 2008
    12:16 am
    Color

    I know there are some people out there with graphic design experience, and some people out there who spend a lot of time looking at text in a terminal window, and even some who are both. I'm looking for a little advice.

    See, there's this problem with the default settings for most terminal emulators: the colors suck. I use a black background because I find it more comfortable to look at. There seem to be studies going in both directions on the dark/light background question, so I'd just as soon skip it. Most of the colors are pretty easy to read, but both blue and bright blue on black are a strain.

    So I think I want to change the palette for the ANSI colors on the terminal. I've done some research (hoping to find a website which had a bunch of palettes and screen shots of them, honestly, but with no luck) and learned a bit about it, but haven't found anything really satisfactory. I think I'm going to have to roll my own.

    From my research, I've come up with a few guidelines for what it should look like which seem reasonable to me. I'd value input on what I'm thinking, as well as color suggestions.

    • The ANSI colors are black, red, green, yellow, blue, magenta, cyan, and grey, plus a corresponding bright version of each (bright black is dark grey, bright grey is white).
    • Ideally, the colors should remain as true to the spec as possible, and should certainly be recognizable as those colors.
    • The colors must have sufficient contrast from black to be easily readable when text is <color>/black.
    • The colors should be readily distinguished from one another, as they're often used to convey information.
    • As often as feasible, the colors should have sufficient contrast with one another to provide readable text. At the very least, bright secondaries should be visible against their dark primary complements.
    • I am given to understand that similar perceived brightness reduces fatigue, so ideally the set of dark colors (black excluded) should be about the same perceived brightness, and the set of bright colors (dark grey excluded) should be about the same perceived brightness. I am currently looking at the W3C accessibility standard of perceived brightness, but am open to alternatives. I'm really not sure I trust the numbers I'm getting out of this. (Blue is really dark, but is it that really dark?
    • Perhaps as a result of blue being so very dark, many colors are impressively readable against it as a background, which is kind of useful. It would be nifty to be able to preserve that, though I'd accept if that's not possible.

    It recently occurred to me to fiddle with my monitor brightness/contrast/whatever settings. On my work monitor, dialing contrast to max seems to make the blues more visible, but I don't know what those settings really do. Is this a good approach, or is it going to be counterproductive?

    Something really needs to be done. 0x0000ff:0x000000 is only readable if I work really hard at it, and blue doesn't go any brighter without becoming less blue.

    Tuesday, April 8th, 2008
    1:09 pm
    In case you missed the memo...

    I figure there might be someone out there who hasn't heard and wants to know. Almost two weeks ago, I came down with a nasty case of what I'm assuming based on symptoms was influenza. I spent something like Friday - Monday in bed, during which time I barely had enough energy to watch Farscape Season 1. Standing up made me dizzy, but I was able to force down a bunch of apple juice and some number of cans of chicken soup which [info]shield_toad111 was kind enough to pick up for me at the store.

    This meant I missed a whole bunch of dance stuff, including the waltz night Friday, the 1880s Bustle Ball Saturday, rehearsal Sunday, and SCD Monday. Starting around Tuesday, I felt better enough that I could actually deal with, say, sitting at the computer for an hour or two at a stretch without feeling faint. That was also when I first found the energy to do exciting things like walking to Davis Square to pay somebody else to make food for me.

    About a week later, I'm at around the same point. I get up, and quickly lose confidence that I can safely drive to the office. I can only sit upright for short periods of time, and getting anything meaningful accomplished is difficult. What the hell? I don't really feel particularly ill anymore, I just feel useless.

    So if you haven't seen/heard from me recently, and wondered why, that's why. This is well beyond "getting" old. I'd like my energy back so I can enjoy the nice weather before the allergies kick in, thank you.



    Current Mood: ill
    Thursday, March 20th, 2008
    12:39 pm
    Terminfo vs. TERMCAP

    Over the last year or so, I've spent quite a number of hours fighting with the terminfo system to get certain tools I use on assorted systems I log in to to be able to send information to the status line (usually the title bar in xterm and most other terminal emulators). This has been a struggle primarily because certain RedHat derivatives ship with a terminfo database containing a broken information file for screen (lacking definitions for tsl and fsl). I finally learned that you can augment the terminfo database with local settings in your homedir (this they got right). At this point I feel I've learned quite a bit about terminfo and its predecessor, TERMCAP, and I have a simple question:

    Why the hell did we go from TERMCAP to terminfo?

    terminfo stores a static database of all the capabilities of every terminal which might ever be encountered. If you use a new terminal (that is, one with an unknown name), the database must be augmented with its capabilities. Why the inflexibility? Now that I'm trying out a relatively obscure terminal emulator (rxvt-unicode), and typically run it under screen, I pretty much have to create ~/.terminfo/r/rxvt-unicode and ~/.terminfo/s/screen.rxvt-unicode on every system I connect to. And if I connect to a system which doesn't give me a homedir for some reason, I'm pretty much screwed (or have to remember to lie about what TERM I'm using before I connect).

    Compare with TERMCAP. The terminal informs the login shell of its capabilities through an environment variable. This means that if it's configured with different capabilities than the stock (say I've enabled/disabled colors differently from the expectation), it can inform the system. And if it's a brand-new terminal, the system doesn't have to have heard of it. I wouldn't have to go to drop files on every system I connect to letting them know about my terminal.

    Yeah, there are severe problems with the TERMCAP approach (environment variables are often limited in length), but when they reinvented the wheel to overcome the limitations, what the hell were they thinking in taking away the most useful feature, the ability for the terminal to inform anything which cares about its capabilities, rather than the system having to know about every possible terminal?

    Seriously, does anybody have any insight on this?



    Current Mood: confused
    Thursday, March 13th, 2008
    8:03 pm
    HOWTO customize XKB without modifying system files

    I have finally succeeded in my quest, to get XKB to easily set up the keyboard in an arbitrary fashion, not limited to the options presented in the rules database, using the system database for everything I'm not explicitly overriding, without needing to edit any system files or have any special privileges!

    This should allow me to map CapsLock to Super (or Esc, or something else, I'm still playing) on any computer I have an account on.

    Most of you probably don't care about the details... )

    Current Mood: accomplished
    Wednesday, March 12th, 2008
    9:31 am
    More fun with bad UI design: Verizon software for the Motorola RAZR M3

    Yes, I have a RAZR. Yes, I have one of those stupid MP3-playing ones. The former is because it's portable and gets good battery life. The latter is because it was the only one I could get free with my plan. That's not what this is about.

    See, Verizon replaces the Motorola stock UI software with its own garbage while it's doing whatever software patching is required to make the phone work with its networks. Among other things, they make sure that the new official software can't transfer media files directly to a computer (that's right, the phone used to be capable of downloading ringtones from your computer, but Verizon disabled that feature to make a quick buck. Jerks.). The whole thing is pretty awful.

    I've found a new depth of terrible, though. The Alarm Clock feature. Apparently when you store a repeating alarm (daily or M-F; nice feature), it stores the time of day of the alarm with respect to UTC or something. I'm not sure what it's doing. What I know is that my 8:30am alarm mysteriously changed to a 9:30am alarm when we started DST this weekend. (I'll spare you the rant about DST today.) Not only does it go off at 9:30, but the clock displays it at 9:30. What percentage of users do you think want their repeating alarm to hold constant with respect to the sun when we switch to DST, vs. what percentage to hold constant with respect to the wall clock?

    Sorry I overslept on Monday. I made the mistake of trusting Verizon with my alarm, and they screwed it up.



    Current Mood: annoyed
    Tuesday, March 11th, 2008
    4:26 pm
    Hey, LiveJournal!

    Not that anybody in a position to do anything about it is likely to be listening, but it would be really cool if I could reply to comment notification emails and have LJ do the right thing.

    That is, when I get an email from LJ that someone has replied to my <post|comment>, I want to be able to reply using my email client and have my reply appear in the appropriate comment thread, threaded correctly. It wouldn't be hard, and it would be really helpful not to have to open a web page just so I can read what I've already read and then enter my reply into a textarea (or use "It's All Text...") instead of using the editor my mail client is already configured to use.

    3:47 pm
    Twitter

    Following the my current trend of looking at something seriously if it comes recommended from multiple unconnected people, I've just signed up for a Twitter account. You can track what I have to say at http://twitter.com/marcmagus (or subscribe to my RSS feed there) if you're not a member.

    I'm not sure what I'm going to use this for, if anything, but I think it might be subject to those random thoughts which catch my fancy and which I want to share with friends, but which aren't substantive enough to feel like they justify an LJ post. I may also use it to explicitly state publicly that I'm adding something to my Hiveminder tasklist, if I want people to know or want to be bugged about it or something. We'll see.

    Note that my text messaging plan still charges me 10ยข per message either direction, and that trying to enter anything on a phone keypad seems to be really bad for my hands, so I probably won't be using the SMS integration much, if at all. Which is too bad, as that could be kind of neat.

    Wednesday, February 27th, 2008
    7:06 pm
    Today in Media

    Was listening to "On Point" on my way in to work today. A caller mentioned that she found the experience of receiving her first tattoo orgasmic. Listening to Tom Ashbrook magnificently maintain his poise and ask her questions to keep the program moving without breaking was inspirational.

    I turned Wheel of Fortune on tonight out of a fit of boredom. Didn't Vanna White used to actually do something? Also, is it just me, or have they both added a lot more gimmicks to the show, and snuck in a lot more advertising within the show?

    Thursday, February 21st, 2008
    3:28 pm
    Vimperator

    Vimperator is one of the coolest things I've seen in a long time, and that's saying quite a bit. It's a Firefox extension which uses vim-like controls for controlling the browser. It looks like I can do most tasks without having to take my hands off the keyboard, once I learn how it works. And, in proper fashion, it supports custom keymappings so you can put commands where you want them.

    Now if I can only figure out how to get vim (or something with controls like it) within a text box in Firefox so I don't have to edit outside and paste...



    Current Mood: impressed
    Monday, February 18th, 2008
    2:34 pm
    Calendar Program Suggestions?

    I think I'm in search of a new calendaring application. gcal, while great, doesn't seem to support the features I really want (or needs a front-end I haven't yet discovered to do so). Here's my feature wishlist:

    • Lets me store my data on my own computer. A tool which requires that I give some vendor all my data will lose points. A tool which does so and also doesn't allow me an easy way to replicate that data locally so I still have access to it in the event of connectivity issues (or the provider disappearing) will lose even more points.
    • Is easily usable from the command-line within a terminal window for basic functionality. This includes both displaying the calendar in reasonable views and adding events to the calendar. For the latter, editing a file is acceptable as long as it's easy.
    • Makes it easy to interrogate the calendar for things like "what do I have going on today/this week/this month/the second weekend in April/etc.?" and "When is that Passover thing happening again, anyway?"
    • Does all the work of including holidays I might care about.
    • Makes it easy to dump all of my data into it, but doesn't clutter its UI so much that I can't tell what's going on after I've done so. Should be able to easily visually distinguish the importance of the most important thing going on during a given time-period (day/hour/whatever).
    • That means the UI needs to be able to know what my definitions of importance are.
    • Should have support for existing open standards for calendaring, because this might be useful down the road (say for sending events to other people).
    • In an ideal world, has a web-enabled front-end with access controls (or just one which is read-only). This should allow me to easily (ideally without any intervention at all) share my schedule with my friends. My schedule is busy enough with interesting stuff that for some reason it seems to me that there are people who'd be interested in seeing what I'm doing just to know about stuff that's going on. (This UI should also, at a minimum, be able to filter on some sense of importance so people aren't confronted with boring minutiae.)
    • Again, it must be sufficiently usable that I will actually use it. Usable is here defined as requiring a minimum of effort for tasks I want to perform while allowing me to perform any task I reasonably want to. In particular, I have to bother to enter every event into it as I become aware of the event, and I have to bother to check the calendar regularly.
    • A bonus feature might be allowing others to enter (provisional) events for me. This could work with the open standard support mentioned above.

    Any suggestions? Just as Hiveminder has been great for helping me dump tasks I want to do someday somewhere central and not have to worry about forgetting about them indefinitely (and is also handy for things I need to do more immediately), I'd like something which helps me keep track of what I've promised to/hope to do when so I'm aware of potential conflicts sooner.

    (Incidentally, hm fails the not requiring me to give someone else my data test. This is something I forgive them for partly because they apologize for it. If I find something which gives all the functionality I use without that requirement, I might switch to it.)

    1:17 pm
    Window Manager FReq: focus_follows_eyes

    I have a feature request for any window manager designers out there: focus_follows_eyes

    I currently use Ion as my window manager on my home computer. It's great. You hardly ever need to use the mouse, and it seems to generally just Do The Right Thing. Except that sometimes it's so good at doing what I want it to that I forget which window has keyboard focus and start typing into the wrong one, because I've moved my attention from Firefox over to an IM conversation I'm having but haven't actually told it to move focus.

    Clearly, what I need is for focus to move by default to whatever window I'm paying attention to. An interesting paradigm for that would be a monitor-mounted camera tracking my eye movements and keeping focus in whatever window I'm looking at. (Better, use the sloppy focus model so if I'm copying text from a printout or having a conversation with somebody focus will stay where I last looked.) You'd need to bind Scroll Lock or something to lock focus on a window for when you're manually copying text from one window to another or something like that. But wouldn't it be cool?

    Thursday, February 14th, 2008
    7:58 pm
    What I learned today

    What I learned today:

    • I've been stretching wrong all these years. Specifically, stretching with counter-pressure (such as by grasping your fingers and pulling back to stretch the wrist), which it may be helpful in averting athletic injury, can actually exacerbate swelling of the tendons.
    • While cold is good for reducing swelling, ice can cause/exacerbate nerve damage. (In this case, I was right to avoid ice, but wrong to avoid cold.) Heat may reduce joint stiffness, but increases swelling.
    • My elbows are much higher than I think they are. What feels like my arms are level is something like a 15 degree angle. This means I should be keeping my keyboard at a height which makes me feel like it's practically at my chin. (It really isn't.)
    • My shoulder blades are at times significantly out of whack. This is probably directly contributing to the problems I've been having, whether or not it's a root cause.
    • The way I sleep probably exacerbates this, too. The way I sleep, as we already discovered, is almost certainly exacerbating the ulnar issues.
    • I should be getting regular massage to help me heal from my RSI. Even though the chances of my getting either my Worker's Compensation coverage or my regular health care coverage to cover any portion of the cost are close to nil. I knew this one, but it was, shall we say, emphasized.
    All in all, a really positive meeting with the OT. She didn't waste time on stuff I already knew, and had a lot of things to say which seemed very on-point.

    ETA: Not from today, but this made me think of it. [info]uridium, the arm numbness/paralysis thing is probably ulnar nerve related. (That was you, right?)

    Tuesday, February 12th, 2008
    12:18 am
    Healing

    I'm about to have two very dear friends of mine in the hospital at the same time for serious conditions. If you're the sort to do the whole sending healing energy thing, please do so.



    Current Mood: anxious
    Saturday, February 9th, 2008
    11:38 pm
    Lazy?

    I just repaired my underwear in order to avoid having to do laundry. That is all.



    Current Mood: amused
    Friday, February 8th, 2008
    1:19 pm
    Ouch

    ibuprofen_taken += 1200 mg.

    That's 600mg last night when I got home from work early, and another 600 I'm taking right now. I think it's been a couple months since I've been in enough pain I felt I needed something to help with it.

    This is mostly for documentation. I'm doing something somewhere between working from home and taking a sick day today, depending on whether there's anything which needs doing badly enough that it's worth typing for. Otherwise, I'm going to try to keep keyboard use to a minimum.

    There may be a bunch of TV in my future; very few of the activities I enjoy fail to require use of my hands.

    On the plus side, appointment finally made for Thursday with someone who should be able to provide practical advice on methods and tools to avoid hurting myself further.

    Thursday, January 31st, 2008
    4:28 pm
    Mini-Rant: Executables with filename extensions

    I just want to mention, for the record, that I hate filename extensions on anything with the executable bit set. Yes, I'm looking at you, authors of Perl and Python scripts.

    When I'm at the command-line and want to run a command (say, "todo"), I want to type "todo" and have it work. I don't want to have to type "todo.pl", nor do I want to have to type "todo<TAB>" to get my shell to do it for me. I shouldn't have to know, or care, or even be reminded of what scripting language the script I'm invoking was written in. Isn't the entire point of the "she-bang" magic line available in all modern shells that you can run a script without having to know what kind of script it is?

    Can anybody give me a single good reason we keep tacking all this ugly garbage onto the end of our scripts? It's not like editors can't use that same first line to figure out what kind of script it is and turn on appropriate syntax features. (I'm sorry, it's 2008. If your editor can't handle that, what's wrong with your editor?)

    So why is my world filled with "todo.pl" and "moap.py" and "generate.sh" (in all probability requiring bash, no less)? Will you all just cut it out? I'm sick of having to symlink and alias around your annoying naming conventions.



    Current Mood: annoyed
    Friday, January 18th, 2008
    12:41 am
    On the bleeding edge

    The moral of the story: just because there is a new version of VLC does not mean "upgrading" to it is desirable. It used to be that to get a version of VLC which did anything useful, you had to use unstable, as nothing sufficiently cutting-edge was marked stable.

    Now, a perfectly working version is stable, and unstable is so bleeding edge that it's broken; upgraded to 0.9.0_alpha20080110 as part of my usual automatic upgrading last week. They seem to have tweaked the UI in ways I'm not sure I like, but, worse, it doesn't seem to be able to play matroska files anymore. Gah. Hopefully downgrading will help, as I can't think of much else to try. I'm pretty sure it's that, and not some black magic involving having improved my video drivers.

    On the Good News front, Arisia tomorrow!



    Current Mood: frustrated
    Current Music: Vienna Teng - Lullabye for a Stormy Night
    Monday, December 24th, 2007
    8:24 pm

    Sign that I'm not a stereotypical bachelor: It occurred to me to make a vegetable to go with my dinner.

    Sign that I am a stereotypical bachelor: . . . as I plated it.



    Current Mood: amused
    Saturday, December 22nd, 2007
    3:57 pm
    Hiveminder

    Recently I've been doing a lot with working on the tools I use to do the things I do, particularly with regard to the computer. It's mostly in the hope that improved efficiency will lead to decreased typing, but also just because it makes me feel good to have my tools help me rather than having to fight with them.

    So, last month, while I was in nethack mode, I watched the ttyrec of Eidolos's first ascension of the devnull tournament. Neat stuff. I noticed that he had some nifty UI features not available in the stock nethack, most notably a lot of colorized output to make important things pop out. Sometime last week, I finally tracked down his tool, Interhack. It's incredibly cool, sitting as a layer between the player and the game and allowing a lot of customization of the UI, and it's in Perl, which means it should be pretty straightforward to hack in new features.

    In order to get Interhack working, I ended up doing a world remerge on my system. That's always exciting. Maybe vlc's interface issues will have sorted themselves out. (Last upgrade lost me some UI features, and I haven't gotten around to tracking down what I did yet. Who knows, maybe they'll magically be back. Yeah, right.)

    None of that is what I wanted to talk about, though. See, while playing with Interhack a little, I noticed Eidolos had provided a plugin to send an IM to Hiveminder directly from Nethack. Something about it caught my eye; perhaps the idea of sending an IM to give yourself a TODO. The source comments say that when he isn't playing nethack or writing tools for it, Eidolos works on Hiveminder. Intrigued, I went to check it out.

    Now, I only joined last night, so I've been playing with Hiveminder for less than a day, but it's certainly caught my eye. I think there's some fundamental way in which the folks developing this thing think like I do. I have a tendency to jot down things I need to remember all over the place: on a handy sheet of paper, a Post-It(TM) note, on my whiteboard, in an appropriately named text file in my home directory, in a todo.txt in my home directory, tagged :TODO: or :FIXME: in the source of whatever I'm coding on, in an email to myself, in an IM to myself, mentioned to whomever I'm currently talking (IM, usually, phone, occasionally), or just leave a browser window open to something associated. It gets them down and out of my obsession so I can go back to whatever I'm supposed to be doing, but I don't necessarily ever see them again. And it wasn't any better when I carried a PDA, as anybody who was in an NSO PTB meeting where I brought out the PDA, the laptop, the notebook, and the random scraps of paper well knows.

    There are a couple of basic places things have broken down in the past. One, which was the death of the PDA, was UI for entering notes. That damn stylus was just too slow; it was faster to write a note to my self, let alone to type it in on a real computer. The other is actually looking at the tasks. Obviously with them spread all across creation and only appearing when I go to look for them, stuff gets lost.

    So why am I feeling positive about Hiveminder? The somewhat cornily-named braindump feature, and the wide variety of communication gateways they provide. This combination means I may actually use it consistently for entering tasks, enough that I get used to it. Then it's just a matter of whether I actually use it to look for tasks. I'm hoping their email reminders might help with that, or that it just might be so useful I keep it open a lot (for entering things) and get reminded.

    Braindump. So simple, and it seemed so uninteresting when I first saw it. And yet, it's so good. The idea is simple: you just jot down a quick note about a task you have, optionally adding some tags, details (priority, due date, etc), and further description using a fairly intuitive and simple syntax. Hiveminder's parser turns it into a (or more than one, if you jotted down more than one) task in their todo list for you. It's as easy as 'cat'ing it to the end of a todo.txt, but you get all the power of a database in the back-end once you've done it.

    I mentioned gateways. In fact, remember that I first got interested when I found out there was an IM gateway. There is. In some ways, it might actually be more powerful than the main ("Web 2.0") front-end. And all you do is send commands over an IM connection to their bot (AIM or Jabber). I always have some sort of IM open, as many of you know. So I can keep a window open on the bot, and tell it a new task...you guessed it, in the braindump format. It can also show me tasks, search them, modify, or even show a random task. I'm starting to feel like a salesperson here...I really do think it's that cool.

    In addition to IM, you can submit tasks via email (nifty), and you can export some/all of your task list to a text file (and edit it and send it back with changes/additions). This last is cool because they provide a todo.pl which will fetch these text files and send them back (as well as doing much of the other stuff you might want to do, now from your bash prompt).

    So the bottom line is that there are tons of ways I can now jot notes down and have them all end up in the same place. It's all as easy as spewing it out of my mind into the computer and having it there for later.

    The astute might have noticed this entry is also tagged with vim. It's my editor of choice, and I spend a lot of time there. Recently, I've been playing a bit with syntax files. That text file Hiveminder exports has syntax. It's simple, but it's there. Wouldn't syntax highlighting for it be nifty, so it's easy to catch typing errors and the important stuff stands out from the annoying (but necessary) background stuff? Yep, I did it. I've uploaded my hiveminder.vim syntax file over at http://www.vim.org if anybody wants to play with it. I think it's pretty cool.

    I also wrote a bash_completion script for that todo.pl I mentioned earlier. I haven't posted it anywhere yet, but it's neat, too, and I'd be happy to send it to anybody who asks. I'll gush about how cool bash_completion is some other time, if I haven't already.

    And, just for fun, while I was already playing around with stuff, I did a vim syntax for jlj (the client I use to post to LJ) entry files. It could use a little work still, like adding lj-specific tags, but it gets things done. I haven't posted it to vim.org yet, but I may. Have I mentioned how much I hate typing entries into a browser window/love being able to use vim for it? Yeah.

    Oh, yeah. vim has spellcheck now. Nifty stuff. During all this syntax stuff I discovered that and enabled it. My syntaxes only check for spelling where it's appropriate.



    Current Mood: accomplished
    Thursday, November 8th, 2007
    10:38 pm
    YAFAP: magus-Kni-Hum-Mal-Law (genoless, polyselfless, artiwishless)

    (Crossposted to rec.games.roguelike.nethack)

    
    Magus the Seignieur      St:18/** Dx:23 Co:18 In:23 Wi:23 Ch:18
    Lawful
    Astral Plane $:0 HP:302(307) Pw:137(281) AC:-49 Xp:27/70077908 T:76211
    You offer the Amulet of Yendor to Lugh...--More--
    An invisible choir sings, and you are bathed in radiance...--More--
    The voice of Lugh booms out: "Congratulations, mortal!"--More--
    "In return for thy service, I grant thee the gift of Immortality!"--More--
    You ascend to the status of Demigod...--More--
    Do you want your possessions identified? [ynq] (n) 
    
    Read more... )

    Current Mood: victorious
[ << Previous 20 ]
About LiveJournal.com