Eterm

Shaded, transparent terminal emulators are pretty. While this is well known by the asthetes who use KDE, and other high-zoot, high-function desktops, I think that it is still true of those who like things a little simpler. I find it quicker to kick the tires of a unicycle. Still, I was looking to see if I could find a terminal emulator that was as fast as rxvt (which I switched to after debian-testing bungled the colours in the standard xterm) but allowed pretty shaded transparency.

I tried aterm, because it had little in the way of dependent libraries, but it didn’t refresh when the backdrop image did, which I found annoying. So, I tried eterm (pronounced, inexplicably, Eterm) and kicked it around for a while. I think I like it, based on this theme:

<Eterm-0.9.2>
begin color
    foreground white
    background black
    cursor #ffff00
    cursor_text #880000
    pointer white
    video normal
end color

begin attributes
    geometry 80x56
end attributes

begin imageclasses
    path "/usr/share/Eterm/pix/"
    begin image
        type background
        mode trans allow trans auto
        state normal
        cmod image 100
    end image
end imageclasses

begin toggles
    map_alert on
    visual_bell on
    login_shell true
    scrollbar off
    utmp_logging on
    iconic false
    home_on_output 1
    home_on_input 1
    scrollbar_right true
    scrollbar_floating false
    borderless false
end toggles

begin keyboard
    smallfont_key LessThan
    bigfont_key GreaterThan
end keyboard

begin misc
    save_lines 1024
    cut_chars "t`"'&() *,;<=>?@[]{|}"
    border_width 0
end misc

It is really simple, but lets me see my pretty backdrop images even when the window is cluttered with terminals. I had to go into my .muttrc to change the “black” to “default”, but that was no hardship.

Block Editing in Vim

I have been lax in adding to this site for some time, but I am hoping to rectify that in the coming weeks. Luckily I have a backlog of things that I have done that will make up the next few entries. For instance, I have come to love Visual Block editing in vim.

When I’m debugging code it is just magic to be able to comment out a block at a time to test various aspects of a program. For a long time now I’ve been referring to a copy-and-pasted section of the vim manual in a loose file, because I don’t use the features so often that it sticks in my mind yet. To avoid collecting these loose files, I’ll put the relevant section here, so I can find it.

Visual-block Insert *v_b_I* With a blockwise selection, I{string} will insert {string} at the start of block in every line of the block, provided that the line extends into the block. Thus lines that are short will remain unmodified. TABs are split to retain visual columns.

Visual-block Append*v_b_A* With a blockwise
selection, A{string} will append {string} to the end of block on every line of the
block. There is some differing behavior where the block RHS is not straight, due to different line lengths:

1. Block was created with $ In this case the string is appended to the end of each line. 2. Block was created with {move-around} In this case the string is appended to the end of the block on each line, and whitespace is inserted to pad to the end-of-block column.

Note: “I” and “A” behave differently for lines that don’t extend into the selected block. This was done intentionally, so that you can do it the way you want.

postfix

# This is main.cf, the only file I need to noodle with.

# Do not change these directory settings - they are critical to Postfix
# operation.
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
setgid_group = postdrop

# appending .domain is the MUA's job.
append_dot_mydomain = no

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# Uncomment the next line to generate delayed mail warnings
#delay_warning_time = 4h

# This is useful - a catchall to which all mail goes if there appears
# to be no recipient.
luser_relay = local@email-address

myhostname = local_hostname
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = local_hostname, localhost
relayhost = smtp_address_of_isp
mynetworks = 127.0.0.0/8
mailbox_command = /usr/bin/procmail
mailbox_size_limit = 0
recipient_delimiter = +