Monday, October 10, 2011

GUI Based Builder for LibreOffice

I have always found building LibreOffice to be tricky - especially on cygwin/Windows. I always felt having a GUI based tool for detecting build environment, downloading dependencies, cloning source and building it would reduce the pain in looking for the howto documentations. This will also reduce the barrier for a lot of people to contribute - specifically for the Windows platforms.

This being on my todo list for a long time, I, as a consultant with SUSE, got an opportunity during SUSE's hackweek to work on this. I wanted to make it cross platform and also learn something new in that process. All put together, I picked: Python (I already know python scripting) and pygtk (for the UI) + glade.
Here's the first version: https://github.com/muthusuba/libobuilder

Note that, it requires loads of work before it becomes usable. Right now, default config parameters, cloning and building works. Major part of dependency checking & installing needs to be written, which would depend upon one single word - contributions - in whatever form - code, review, comments....Even just editing the UI XML with Glade and making it better is appreciated.

Monday, July 11, 2011

SMS Based chat (anonymous, free and IRC types)

This is a log of the application that I created as part of the txtweb's App2Fame contest. txtweb is an application platform based on the SMS technology. So, all phones irrespective of whether being smart or not can access all the apps and their features and hence become smart. The only down side being that the features are dependent on what txtweb's applications provide.

For submitting to that contest, I was cracking my brains for some ideas to submit, when I thought of google maps helper app (@gmaps) , which I created in one day and submitted. But, later I endedup finding out that there was a similar app @route which was already submitted and in use for a long time.

Well, then I thought of a chat application, this time I wanted to first search the apps present there (- found out that the search feature of txtweb could have been a lot better, thou). I found a few apps, but they really don't do much. Just dummy apps created with some text and doing really nothing. So, here it goes, another day and submitted it just before the deadline (@sirc).

Key Features:

1. Very similar to an IRC client/server. Only that there is only one server.
2. Supports channels concept.
3. Use nicks rather than phone numbers - makes in anonymous, just like the irc.
4. Chat with multiple people
5. Private chat with a single person (based on nick)
6. Create private channels - these are starting with a '.' (dot) and will not be listed publicly.


So, here's how to use it:
SMS these 'bold' text to +91 92433 42000 (India)
@sirc @join [channel] - E.g. @sirc @join bangalore
Joins a channel (and leave your current channel). This will create a channel if there is none found.

@sirc @nick [nick]
- E.g. @sirc @nick superman
Choose a nick for yourself.

@sirc @leave

Leave a channel - Stops messages from this app as well until you join another channel or someone private messages you.

@sirc @[nick] [msg]
- E.g. @sirc @superman come and help!
Send a private message to @nick

@sirc @listpeople

Lists the people currently your present channel (provides all the nicks).

@sirc @list

Lists all the channels present (Does not list channels starting with a dot (.)
Channels starting with a dot are private channels.

@sirc @help
Shows the help. Mostly the contents here ;)

@sirc
[msg] - E.g. @sirc anybody knows kannada?
Sends a message to everybody on the channel. You need to join one first using @sirc @join

Try it out today!!!

Friday, March 25, 2011

The so called Hidden Features of LibreOffice 3.3

There are quite a few non-noticeable features in LibreOffice 3.3.x. I thought of sharing a few here...

Batch conversion
Especially useful when you want to work with command line or invoke conversion from another program or convert set of files to a given format (batch process).

Equivalent commands: oocalc (and its set), localc (and its set), soffice.bin
Assuming the current working directory is the libreoffice installation directory

The following command would convert all the *.doc files to *.pdf files
./soffice.bin -convert-to pdf:writer_pdf_Export -outdir /home/user/output /inputfiles/*.doc

[PS: wildcards wouldn't work correctly on windows specify the file names (list) instead.]

Forcing input filter while opening via command line
Whenever we open a file using the command line, we wouldn't generally have a choice to select the input file type (e.g. xlsx MSO 2007 or xlsx MSO 2010 or anyother). We would be at the mercy of the program to auto detect correctly. Use the following option to force opening the file with a given filter.
./soffice.bin -infilter="Calc Office Open XML" file.xlsx

Combining the above two
oh well...I guess by now it should be easy ;)

References
./soffice.bin -help
List of output filters: http://opengrok.libreoffice.org/xref/filters/filter/source/config/fragments/fcfg_writer.mk
List of input filters: Search with the above example filter or http://opengrok.libreoffice.org/search?q=PreferredFilter&project=filters

Watch out for more such features...