kuhhhh

Why i hate Linux #2: UI inconsistencies

(Please see part one for the origins of this series and a summary of my experience with Linux. I should note also that i realise many of the problems i’m describing are caused by different applications designed by different people — i don’t mean to imply that a problem with OpenOffice can be fixed by the GNOME team, for example — but i feel they all stem from the same root problem.)

The user interface is probably the most important part of an application to me. Features are very important too, of course, but without a consistent and understandable interface those features are unlikely to be of use to anyone. Many Linux developers, particularly those on the GNOME and Ubuntu teams, claim to understand this — but i don’t feel like they really do in many cases. Coming from an OS X perspective, Linux is an absolute shit pile made up of thousands of unrelated poorly integrated half-assed components that have had very little serious thought put into their interfaces.

These are a couple of (mostly minor, but nonetheless glaring and irritating) examples:

READ MORE


Why i hate Linux #1: GNOME Do

I’ve recently purchased a netbook, and since it currently does not run OS X very well, i’ve planned on installing Linux on it. In preparation for that i’ve been re-immersing myself in Ubuntu on my desktop. … And it’s made me remember why i don’t use Linux.

I should make a disclaimer here: I have been messing with Linux off-and-on since i was… i don’t know, 10 years old. Before GNOME existed, in any case. I’ve tried Ubuntu, SuSE, PS2 Linux, Red Hat, Fedora, Mandrake, Yellow Dog, all kinds of things. So i do know a bit about it, and i find it fascinating and a great idea in theory. But i’ve never been able to stick with it long-term — i always go back eventually.

So anyway i thought maybe it’d be fun to do a series on why someone like me — someone who loves UNIX in general, spends several hours a day in the terminal, and fully supports the philosophy of open-source software — would not want to use Linux (or BSD, or Solaris, or any other general-purpose piecemeal-style variant of UNIX).

Our first topic: GNOME Do.

As a Mac person i can be expected to want a Dock-like application. GNOME Do was released after my last bout with Linux, so i’d never used it before, but as always i’ve tried to keep informed, and i’ve heard a lot of great things about it. So that was the first thing i went for.

Installation was easy enough i guess, i just used Synaptic. When the installation was finished i had to go searching for it in my Xfce menu, but that too was easy enough. But then i started running into problems:

READ MORE


modifying date/time formats in OS X with icu

I have a lot of (let’s say) eccentric preferences, and in addition to that i’m obsessive-compulsive, so i tend to latch on to things that bother me and put enormous amounts of effort into fixing them. One of those things is what we’ll call ‘locale settings’ — the format of times, dates, numbers, &c. As an eccentric obsessive-compulsive idiot, i have the following requirements for my ‘locale settings’:

  • UK English interface language and dictionaries.
  • ISO-ish (or Japanese-ish) short date format (yyyy/mm/dd).
  • European long date format (dddd, d mmmm, yyyy).
  • 24-hour clock.
  • Swiss-style digit grouping (123’456’789).
  • Dutch day abbreviations (ma, di, wo, do, vr, za, zo).

Why do i have these requirements, and how did i even acquire them? (1) I am an idiot as mentioned above, (2) i honestly have no idea.

In any case, the reason this is an issue for me is that most OSes do not offer fine enough controls for you to create a locale like this through the GUI. For example, OS X will let you change the interface language, the time format, the date format, and (as of Snow Leopard — finally) the digit grouping, but it will not let you change the day abbreviations. Apple, Microsoft, &al., figure that 99.9% of people do not care so much that they need to be able to change these things — and rightly so, but some people (like me) do.

The good news is that OS X uses ICU (International Components for Unicode), which is an open international standard for defining these types of locale settings. As a result, we can change these locales to whatever we want, even going as far as to do crazy shit like the above.

The down side is that editing the ICU database is ridiculously complicated. It took me quite some time to figure it out, and i had to do it almost all by myself because ICU’s documentation is stupid and it seems like no-one online knows anything about it. So for those of you who are interested in this sort of thing, here’s what i did:

READ MORE


better key bindings for Firefox (on Mac)

Like many people, i find the default Macintosh key bindings for Home, End, PageUp, PageDown, &c., really irritating… so i’ve changed those key bindings to better reflect my needs, which includes making the aforementioned keys more ‘PC-like’ (kuhhh).

That all works very nicely for Cocoa applications, but since Firefox is not such an application, it requires additional configuration.

When i was first researching this problem, i came upon a Firefox extension called KeyFixer, which does a pretty good job of addressing the Home/End thing. However, the original was still missing some of the native Cocoa key bindings (which Firefox doesn’t have for some reason), and there were other issues like some of the bindings not working in certain text controls.

So… i’ve modified the extension to fix all that; download it below:

keyfixer-mod 0.4.2 (last updated 2009/06/29)

All this does is replace the XML file that Firefox uses to set all its key bindings, so it should be quite safe and will probably work for many versions to come.

What it does:

  • Changes Home, End, PageUp, and PageDown to match the ‘PC’ behaviour in all text controls.
  • Enables the proper/native Mac behaviour for Backspace/Delete in all text controls.
  • Enables the proper/native Mac behaviour for line and word selection (Cmd+arrows and Opt+arrows) in all text controls.
  • Enables the up and down arrows to go to the beginning/end of the field in single-line text controls.

♥ dana


better key bindings for OS X (fix Home/End keys)

I can get behind a lot of Apple’s design and interface decisions, but OS X’s native key bindings are not one of those things. The main problem i have is that the Mac bindings for Home, End, Page Up, and Page Down are super irritating. I know some hardcore Apple fans think that this is the mentality of a ‘switcher’, but it’s really not. Firstly, i grew up on Macs; and secondly, every other OS ever made does it differently — not just Windows. The Mac bindings are just really dumb, especially so for anyone who spends time in the terminal or does any programming or Web design.

Fortunately, one of the things i can get behind is the customisability of the Cocoa text system. Fixing OS X’s key bindings is as easy as dropping a text file into your Library folder. Here are the exact instructions:

  1. Navigate to ~/Library. (That’s /Users/yourname/Library, if you didn’t get that.)
  2. Create a new folder called KeyBindings. (If it’s already there, you can skip this step.)
  3. Create a new text file (with TextEdit, or using touch if you like the terminal) with the following file name (make sure there’s no .txt on the end): DefaultKeyBinding.dict
  4. Edit the file as you like (see below for what i use). Settings will take effect immediately, but you may have to restart applications that were already running.

If you don’t want to write your own configuration file, you can use mine. Just copy and paste the following into your DefaultKeyBinding.dict file:

READ MORE


centre images in Firefox

When i was on Windows i used Opera pretty exclusively, and one of the things i liked about it was the fact that it centred ‘direct’ images in the browser (e.g. if you’re viewing somesite.com/somepic.jpg). Firefox, Safari, and Internet Explorer don’t do this.

Recently i took the initiative to fix Firefox so it did, and i’ve posted the resulting Stylish sheet on userstyles.org for your great pleasure:

http://userstyles.org/styles/24867

Here’s what it looks like in action:

READ MORE


Macintosh keyboard layouts for Windows

I am a Mac person — i have been since i was little. There was a period, during the dark dark ages of the Mac (between OS 9 and Jaguar), where i switched to Windows, but even then i still kept all my Mac habits and preferences. One of those was the English keyboard layout that has always come with Mac OS, which uses the Option key (equivalent to AltGr on PCs) to input special characters like ®, ¿, and é.

To enter characters like these on a PC, you generally have two choices:

  1. Use the Character Map utility (or its equivalent on Linux), which is tedious and inconvenient; or
  2. select one of the ‘International’ or ‘Extended’ keyboard layouts, which have almost the opposite problem from the normal ones — they contain an enormous assortment of obscure characters that i will never use or remember.

Not happy with either of those, i decided to re-create the Macintosh layout for Windows. I did this using Keyboard Layout Creator, which is a surprisingly handy utility given it’s made by Microsoft.

You can find three such re-created layouts below:

  1. US - Macintosh (QWERTY) — This is a completely faithful reproduction of the original Macintosh US English keyboard layout, including dead keys. Special characters are entered with the AltGr key (that’s the right Alt key, if your keyboard hasn’t got it labelled as AltGr).
  2. US - Macintosh (QWERTY - en-GB) — This is exactly the same as the above, but the input language is set to UK English (en-GB), for those of you who (like me) prefer that.
  3. UK - Macintosh (QWERTY) — This one is a little different; it’s a mixture of the standard UK keyboard layout and the Macintosh US one. You’ll want to use this if you are accustomed to the traditional UK keyboard (with hash on the home row and double-quote above the 2). I don’t believe Apple have ever made an official UK layout for the Macintosh (their UK keyboards really aren’t UK keyboards at all), so i’ve had to take some liberties. For example, i’ve left the guillemets (« / ») on the # key. Also, i’ve moved the broken verical bar (normally AltGr+`) to AltGr+\. Not like you used that anyway though.

Installation is pretty easy: Just unzip and run setup.exe, then add the keyboard in the Control Panel. In Windows XP this is in Regional and Language Options, Languages, Details. Not sure where it is in Vista and Win7. Note that the keyboard settings are per-application, so you may have to change it for each program you have open using the Language Bar.

If you’ve never used a Macintosh keyboard before, you can find a diagram for the special keys below (found this on Google Images). Just pretend the Option key (the dark one with the funny symbol) is your AltGr key:

READ MORE


oh.

Hi Internet! I’m not sure if i will keep at this, but it occurred to me the other day that i have a lot of computer-y stuff that might be worth sharing, and… i’ve got no place to do that. So now i do.

I have a lot of things in mind i want to put up, so i might be moving quickly for a bit. Possibly too quickly for a blog that’s so new, but I DON’T CARE, do i? I do what i want.

♥ dana


11