Cassius is now on GitHub!

While a very important girl was off visiting her grandparents, I resurrected work on Cassius! Thanks to a few nights and occasional Saturday afternoons, the interface is maturing to the point where I can almost use it, so I’ve decided to put it on GitHub.

Old code never goes away, it just goes back to the compiler.

Right, I have lost all respect for Microsoft

After recently reformatting the Windows NT box (I tend to every year or two), I did install Visual C++ 2010 Express Edition out of my ISO for the whole show. Well, finally I got around to opening a project file (after generating it with premake4 ofc). Running off the default settings, I went ahead and compiled, then I ende dup standing here “WTF, where is the button to clean gone?”

Then I clicked on the thing to enable “Expert” settings and was elightened. I don’t know if it is just beause it’s the Express Edition rather than the Professional Edition or something, but I just lost my last tread of respect for Microsoft—I used to think they knew how to make development tools.

Eh, that reminds me, if anyone holds there breath waiting on C99 support in the C-aware portion, you’ll die.

the Canadian Phenomenon

Somehow, whenever my brain gets so heavily infused with thoughts about this one particular girl in Canada, my coding aptitutde seems to increase… algorithms fall into place. It’s almost like hack mode with a smile, and I can’t explain it :-S.

Sigh, another slice of the universe that makes no sense yet o/

Great way to start off the work day: a headache and occasional spells of vertigo. Oi. If this impacts my coding, I shalt be pissed.

Corky – the parrot

Before dinner, ma came in and gave the dogs some lettuce, well for one reason or another, Corky decided to leap on my pillow and basically roost himself on my shoulder :-/.

Hmm, bash_completion REALLY slows down the shell

On dixie, I generally used zsh, but have been using bash on alice, since that’s what I use at work. On the other hand, while zsh is _so_ big, I could never expect it to be fast, on alice, I find that opening a new shell takes irksomely long.


Tests: (avg m:ss reported by GNU time -v)

-bash:
no profile, no completion = avg 0:00.01
with profile, no completion = avg 0.00.10
no profile, with completion = avg 0:01.16
with profile, with completion = avg 0.01.27
-dash:
no profile = avg 0.00.00 # to fast to be timed?; highest was 0:00.03
with profile = avg 0.00.08

Ok, so maybe an Atom based netbook isn’t as powerful as a server with multiple quad core Xeons but that is still a rather big difference. No wonder though—on alice, /etc/bash_completion is 1700 lines and /etc/bash_completion.d contains over 25,000 lines of scripts to source.

My shell profile only adds like 700 lines of code when run on Linux. Although zsh really made me appreciate context-sensitive tab completion, the only interest I have with it in bash, is pretty much for git.

Hmmm…

Ugh, thanks for the leap…

Hooked up Alice to the big screen after getting off the couch tonight. Want to wrapping up some stuff—I kind of miss having a working pager in my panel. So I blocked off the door to keep Corky from coming in and pissing on the bed before I got done. Well guess what? The Parental Unit comes barreling in, complaining about the door being shut off.

I may have gotten a solid WTF!? Leap out of that, but at least I can laydown and __NOT__ have a wet fucking pillow!!!!!! I am thinking of making a door-barricade the SOP.

This is a deplate of my Viki notes file on XRandR

1.1 Querying information

This was taken  with my ASUS 1015PE Netbook (Alice) hooked up to my LG
wide screen at home on 2011-07-23.

$ xrandr -q

Screen 0: minimum 320 x 200, current 2944 x 1080, maximum 4096 x 4096

LVDS1 connected 1024x600+1920+0 (normal left inverted right x axis y axis) 220mm x 129mm

   1024x600       60.0*+

   800x600        60.3     56.2 

   640x480        59.9 

VGA1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm

   1920x1080      60.0*+

   1680x1050      60.0 

   1280x1024      75.0     60.0 

   1152x864       75.0 

   1024x768       75.1     60.0 

   800x600        75.0     60.3 

   640x480        75.0     60.0 

   720x400        70.1 

$

LVDS1 is Alice’s display. VGA1 is the monitor hooked up to the VGA
port on the side.

1.2 Positioning monitors

       

  • xrandr –output M1 –left-of M2 :: M1 is left of M2
  •    

  • xrandr –output M1 –right-of M2 :: M1 is right of M2
  • xrandr –output M1 –above M2 :: M1 is above M2
  • xrandr –output M1 –below M2 :: M1 is below M2
  • xrandr –output M1 –same-as M2 :: M1 and M2 mirror each other.

Where M1 and M2 are the short names given from xrandr -q. I assume that

    $ xrandr --output M1 --left-of M2 --output M2 --right-of M1

Is permitted, +/- using two xrandr commands for it, as well as being
redundant.

1.3 Setting monitor resolutions

    $ xrandr --output NAME --mode SIZExSIZE

Sets the monitor NAME to the given mode.

1.4 Turning monitors on and off

1.4.1 On

    $ xrandr --output WHICH --mode 1024x768

1.4.2 Off

    $ xrandr --output WHICH --off

Rapid fire shell coding :-)

Well, since Friday night, I have been pretty steadily working on my ~/.sh infrastructure. I started by hooking up alice to sal1600’s monitor (22″), keyboard, and rat. Since I rather distaste how the GNOME/Ubuntu has been acting late: I also took the libtery of adding my xmonad.hs file to git, then ditching GNOME for a pure XMonad session. As I use programs that need a system tray to really be useful enough to me (e.g. pidgin), I’m using fbpanel: good old staple.

For a little while I experimented with making the inactive windows transparent, this works pretty great, but rather interfers with my custom xterm wrapper script that sets my terminals ocupacy: the propteries set by transset-df get lost :-(. Looked at some other terminal emulators supporting transparency, besides gnome-terminal and rxvt-unicode. Sakura seems to be the best bet, and evilvte almost excellence (better to compile from source then using the .deb). In the end, I just switched off the fancy effects, since most of the time I am using a terminal or reading text anyway.

Next up was figuring out how to use XRandR to manually configure my displays. Better still, I wanted to extend my ~/.sh and X session infrastructure to auto-magically configure itself to Do What I Want when I launch a session when hooked up to an external monitor. For architecture and convience, it can also be run as a shell script, thus supporting a sort of hot plugging. So right now, if I hook up to say my 22″ widescreen and let alice do it’s magic configuration: after I login, I will be working off the big screen, so I can ignore the 10.1″ little one :-). This isn’t without a few warts though, namely if I go hotpluggy with it, fbpanel needs to be restarted in order to render on the new primary display (I just switch off the netbooks display), and pidgin becomes confused on where to render notifications (oi) with how it’s setup in the default Ubuntux way. Oh, and hardware issue being that the touch pad makes the cursor jiggly should I close the lid lol. The performance is also noticably slower on 1980×1080 but works very snappy. I really am inpressed with this sweet little ASUS.

I then pretty much went about refactoring bits and pieces of my `sh services environment`, going so far as to create a GNUmakefile that I can use to help set things up whenever rigging a clone on a new install. Being lazy, I also finally moved ~/sw/sh from Dropbox to git. Generally I use bin for local binaries, sh for portable scripts, and sh.local for things specific to the system. Usually odds and ends that reflect a very specific setup.

Over a dozen commits later, I like the result pretty well. The only problem is, the difference between the 20″ screen at work and this 22″ screen, I now have so much screen realestate that I don’t know what to do with it LOL. In Windows, most of it just goes to waste for want of XMonad.

Wow, I really don’t like the new Blogger editor; although I must admit it does really look better—just feels to much like a file in Google Documents, and overly white lol.

Hmm, me likes using my little blogit script, and getting to write my posts in Vi IMproved :-).