Change default font in LibreOffice 4.x Spreadsheets

LibreOffice (henceforth referred to as LO, in this post) is a decent piece of software. I think what makes it better is the price: free.

But, LO is also a VERY FRUSTRATING piece of software. Or at least I find LO very frustrating. I mean, things that a user should be able to do quickly and easily have to be done in a round about way.

I love to do most of my work in plain, pure, simple text files. But, then, there are times when you have to create “documents” and presentations. My usual method of operation for a long time was:

  • I would write my documents in text form (i.e., as an ASCII text file in gedit or even “cat > fileName”) and then add HTML tags to the document “manually” (yeah! go ahead call me crazy)
  • I would write the outline for my presentations in text form (again, as an ASCII text file) and then use the some presentation creator (e.g., like the one in Google Drive) to create the final presentation

Till about 3 months ago, the only reason I would invoke a spreadsheet (typically Excel, which was the only reason I would need a Windows and an Office licence) would be to create a pretty-chart to insert into a document or a presentation. Other than that I was blissfully ignorant of all the cool things Excel and other spreadsheets could do although frankly the real reason was that I didn’t care that those spreadsheet apps could do so much.

If I had to do some “significant” (not really) calculations on a given piece of data, then, till about 3 months ago, I would do my calculations by starting either bc/dc or the python interpreter. For longer calculations, I would write simple python code. (My knowledge of Python is restricted to writing elementary programming constructs, but, my calculations were also pretty simple till 3 months ago, so that knowledge sufficed.)

So, that was that … till about 3 months ago.

Then, about 3 months ago, I “discovered” the power of spreadsheets. (Now you know I have been living under a rock for a LONG time, right?) And I instantly fell in love with them. My current understanding is that spreadsheets are great not only for creating pretty-charts from cooked-up data, but, they are also good for routine calculations.  With a spreadsheet you don’t have to worry about “how am I going to read that data into my program”. Why? Because you work with the data … directly. Your program is specified as a bunch of formulas that you insert into various cells where you want some calculations done. And most of these spreadsheets, but, especially Excel, come with an extensive library of functions you can use to manipulate your data. Pretty cool, isn’t it?

Now, all that sounds great and works well, but, there’s one big problem in Linux-land. No, the problem isn’t that there’s no good spreadsheet software. In fact, if you search online you would find a lot of open source spreadsheet software for Linux. The problem is that none of that spreadsheet software is as “nice” as Excel.

LibreOffice Calc comes pretty close to be being “nice” but it is like using Excel 1980 rather than using Excel 2013. Why do I say that? Because even a simple function like “set default font for ALL my spreadsheets … now and in the future” is absent. And the developers seem to have no intention to provide that function for whatever philosophical reasons. Mind you, we are talking about LibreOffice 4.x here, not LibreOffice 0.04.

(On a side note, the biggest problem with open source software is that there are TOO MANY philosophers who “initiate” the code and then never contribute a line to that code but continue to rule as the “Benevolent Dictators“. And in the world we live in, where we love to make Gods out of humans, we accept these “abusive” benevolent dictators as Gods for no apparent reasons.)

So, anyway, I googled around and did not find any workable solution for my little problem of “set default font for ALL my spreadsheets … now and in the future” in LibreOffice 4.x Calc. There were things like: create a default template (how?) or choose File->Template (not there in LO 4.x), etc. So, I figured I would try my own trick. And luckily it worked, so here it is for my future reference. If it helps you, all the better.

So, what’s the procedure to “set default font for ALL my spreadsheets … now and in the future” in LibreOffice 4.x Calc? Here’s what I did:

First, I created a new, empty spreadsheet file. Then, I chose “Format->Styles & Formatting …”. Then I right clicked the “Default” list-member and chose “modify”.


Modify The Default

In LibreOffice 4.x Calc, choose “Format->Styles & Formatting” and then, choose to “Modify” the “Default”

In the Font tab, I chose to set my font to “Ubuntu, size 16”. Yeah! I like B-I-G fonts.

Choose Your Font ... wisely.

Change the default font. I like B-I-G fonts, so I chose “ubuntu font, size 16” as shown here.

With that done, I chose to save this file as a “template”. I called it “libreOfficeCalcTemple”, although LO added an ots extension to it. This file was saved in “~/.config/libreoffice/4/user/template/” directory which has been set as the default path where LibreOffice 4.x would save its template files.

Now, under ordinary circumstances, I expected that a new invocation of LibreOffice Calc would automatically pick up this spreadsheet template from the default path. But, NOPE! It didn’t even recognize that spreadsheet template’s existence. What gives? I don’t know! And frankly, I don’t care.

So, then, I started LibreOffice (the general program, not the calc/spreadsheet part of it). This brought up this screen:

Start LibreOffice general program

Start LibreOffice, the general program, without any specific functionality (spreadsheet, wordprocessing, etc) and choose “Templates …”

From there, I clicked the “SpreadSheets” tab, and chose to import my “saved” template. Once my template showed up, I chose “Set default” to make that my default template.

Set your template as default

Set your chosen template as the default template for all your spreadsheets henceforth.

Once all that was done, the next invocation of LibreOffice 4.0 Calc came up with “my” font specification.

The point here is that for something as trivial as “set default font for ALL my spreadsheets … now and in the future” I had to jump through infinite hoops (create template file, save it, pull it up again, set it as default, etc) which I feel is unnecessary trouble. So, my humble request to the LibreOffice devs: please set your “high” philosophies aside and create a piece of software that is easy and fun to use. We don’t want a Microsoft Office replacement. We just want a functional, fun and easy to use “office” software. Because if we really wanted to do something the hard way we would all just move to Emacs (JK. BTW, that’s coming from a guy who has used Emacs EVERYDAY for 5+ years … but just used … never really written any Emacs extensions).

Anyway, so if that tip helps you, all the better. If not, ignore my rant.


Trouble in TP-Link land!

Some time back I wrote a post about how my D-Link DSL router’s Wifi broke down leaving me with no way to access critically important sites like Facebook, Twitter, Pinterest and Google+. So, I had to hunt down an old TP-Link MR3020 router and create a hideous looking wireless network that had more wires than I would have loved to have around. Thanks to all the goofing around I did back then (and recorded meticulously in that blog post), I have been able to browse the Interwebs and consume all the knowledge that is out there (e.g. mother kitteh’s love their little kitteh’s, doggeh’s love to chase their own tails, etc).

A few days back a strange and interesting phenomenon happened. I live in a small apartment that is probably not more than 30 ft in length and not more than 20 ft in width. This house would have been a great loft, if the builder hadn’t decided to provide “privacy” to the bedroom. So, there’s one big wall that separates the bedroom from the rest of the house.

The Wifi signal from the TP-Link MR-3020 router reaches most parts of the house, but, there’s a section of cupboards in the bedroom where it does not reach. I would not have detected that dead-zone had it not been for a tiny little Samsung N150 netbook that I am converting (at snail’s pace) into a simple home server. To keep things manageable, I put the Samsung N150 netbook, an external monitor and a Canon scanner+printer into one of the cupboards. But, with that setup in the cupboard, I was not able to access the Interwebs from the Samsung. And even worse, I was not able to access the Samsung N150 netbook and its connected printer/scanner from the other computers in my house. A quick check revealed what I was scared of: the Sammy had no Wifi connectivity!

Pulling the Sammy 2 feet out of the cupboard and into the open enabled it to connect to my home Wifi network. Hmm! What’s a human to do in such a situation? There’s only one thing: get more networking equipment. So, I quickly logged onto a local online retailer and ordered the cheapest Wifi box I could find, which incidentally happened to be a TP-Link WR702-N wireless device. This box is a tiny Wifi device that can be configured in various ways … if you can get to it!

So, the box arrived today (mid May 2014) afternoon, but, this being the peak summer season in India, I decided to ignore it till evening. Then, in the evening, I pulled the TP-Link WR702-N out of the box and decided to configure it in “repeater mode” with the hope of extending my current Wifi network’s range deep into the cupboards.

As with all TP-Link products, the router came packed in a neat little box. The device itself is very small in size, if you care about that aspect of it. The most shocking part of the whole package was a seemingly well written “Quick User Guide” (QUG) that was inside the package. Now … I like to live dangerously, so I don’t RTFM (read the fine manuals) that accompany the devices I buy. But, considering all the trouble I had earlier in configuring the TP-Link MR3020 router, I figured it would help to RTFM this time through. At first impression,  was I impressed with the beautifully done, poster size “Quick User Guide” that came with my new TP-Link WR702-N Wifi device? Yes I was!

According to the QUG all I had to do was connect to the “default/preconfigured” Wifi network on the TP-Link WR702-N Wifi device, configure it using a simple menu and I would be in networking heaven. Then reality hit me

Here is my suggestion if you get yourself the TP-Link WR702-N Wifi device: shred the freakin’ QUG and throw away the pieces so that you never mess your mind. God save the world! That TP-Link WR702-N Quick User Guide is not only utterly useless, it is completely wrong. Why do I say that: because you CANNOT connect to the “default, preconfigured” Wifi network on the TP-Link WR702-N. Since there’s no obvious way to get into the box, there’s no obvious way to configure the box! But, I figured out a way! Here’s what I did:

The TP-Link WR702-N has two ports: a tiny USB port and an Ethernet port. Cables for both the ports are provided with the box. So, connect the cables to the TP-Link WR702-N  appropriately. Then, connect the other ends of those cables to your computer. Now starts the fun part. Your computer/laptop/netbook/whatever is going to spin round and round to get an IP address from the TP-Link WR702-N, but, the TP-Link WR702-N is NOT going to give any IP address to your computer. Why? I don’t know! I really don’t! So, what should you do? Irrespective of whether you are on Windows, or Linux or Mac OS X, you gotta do these steps:

  • disable DHCP on your computer’s Ethernet port
  • configure a static IP address on your computer’s Ethernet port – anything in the 192.168.0/24 range would do, but, is the TP-Link WR702-N device’s default address, so, I chose

In my specific case, my laptop runs Xubuntu 13.10, so I had to do all those things (disable DHCP and configure an IP address manuall) from the Network Manager configuration utility. VERY IMPORTANT: do NOT, and I repeat, DO NOT, try to configure the IP address for your computer’s Ethernet port from the shell. I tried being a smart whatever, but quickly realized that Network Manager continuously ran DHCP client on my Ethernet port. So, even if I configured the IP address manually (sudo ifconfig eth0 up), NM would undo that configuration within the next few moments and then go into a loop requesting IP address from the TP-Link WR702-N.

So, your best bet is to edit your network connections and add a new Ethernet interface that would have a manually configured IP address, in stead of a dynamically acquired IP address.

Network Connections shows two Ethernet interfaces: Eth0-1 and Eth0.

Setup two interfaces on your Linux box. Eth0-1 has a manually configured IP address that lets it connect to the TP-Link WR702-N device. Eth0 is the default Ethernet interface that fetches its IP address dynamically using DHCP.

Here is how my Eth0-1 is setup:

Eth0-1 configuration

Setup Eth0-1 with a manual IP address, in this case. (NOTE that i had changed the IP address of the TP-Link WR702-N router to be earlier.)

Once you have done that, login to the TP-Link WR702-N Wifi device and start setting it up. To do that you need to start your browser and point it to (or in my case). Assuming you haven’t done any changes yet, the login and password are both set to admin by default. Now, you would be tempted to get into the “Quick Setup” option provided by TP-Link WR702-N configuration utility/web page. But, don’t do that. In stead go through the process manually.

In my case, I wanted to configure the TP-Link WR702-N box as a Wifi Repeater. So, I had to setup the following:

In “Working Mode” I chose the “Repeater” mode as shown here and saved it.

Setting the TP-Link WR702-N in Wifi Repeater Mode

Setting the TP-Link WR702-N in Wifi Repeater Mode

In “Wireless Settings” I configured the Wifi network that I wanted to “repeat”. For this example, assume that the network name is “abracadabra” and the security password for the network is “bogusPassword”. Also, assume that the MAC address of the TP-Link MR3020 is “”64:70:02:55:55:55” which in TP-Link case translates as “64-70-02-55-55-55”. (Seriously! Who in his right mind uses dashes in stead of the universally accepted colons to write a MAC address? TP-Link does!) Don’t forget to save all that info once you have configured your TP-Link WR702-N device. So, here’s how the whole configuration looks in my case:

The wireless settings on my TP-Link WR702-N box setup as a Wifi Repeater

The wireless settings on my TP-Link WR702-N box setup as a Wifi Repeater.

In “DHCP Settings” I chose to disable DHCP because my TP-Link MR3020 issues appropriate, preconfigured, IP addresses to my notebooks, tablets, and phones.

Disable DHCP on the TP-Link WR702-N

Disable DHCP on the TP-Link WR702-N

Once all that was done, I chose to reboot!

Just reboot, already!

Just reboot, already!

Then, when the  TP-Link WR702-N came back up, it was ready to play its role in my network: that of a Wifi repeater.

Bottom line: never RTFM … especially TP-Link manuals and their online help. (JK)

Some useful utilities from Microsoft

Microsoft has a whole bunch of tiny little useful programs that are hiding all over their site. E.g. back in the days of Windows XP, they had all these little add-ons that were probably called “power toys” or something like that. There were a whole bunch of useful utilities like (my favorites):

  • Tweak UI
  • Sync Toy
  • ClearType Tuner
  • Open Command Window Here
  • Image Resizer
  • Alt-Tab replacement

But, you wouldn’t know about them till you went out hunting for them … with Google as your guide in the wild of the Web.

Then, Vista happened and I broke my ties with Microsoft after wasting a bunch of money on Windows Vista Ultimate and Office 2007 Ultimate licenses.

After the long lull and having almost forgotten Microsoft, I recently got myself a new laptop that came with Windows 8 installed on it. Now I have been wondering what to do with it – the laptop and Windows 8. So, I started looking around and figured I would download some free and open source software for Windows. But, then most of the open source software downloads provide their MD5 checksums to help ensure that you got the whole package. Back in the days of Windows XP Pro, I had used WinMD5Sum or some such program, but I can’t find it anymore. I did find these few, but they don’t seem to be the program I had used back in the days:

I am sure there are others, but, who cares. Because today, I found out that Microsoft has its own file checksum integrity verifier program called FCIV. And guess what! That FCIV program supports both MD5 and SHA-1 checksums. Cool, eh? So go on, try it out already.