Unfinished Sofware's Blog

This TextPress widget enables search on your blog using Google Adsense For Search.

Read on...

 

I try to get my applications written in python, this way I'm able to tweak it as needed.

When I thought about putting a blog online, of course, I searched for a python blogging application, but, by that time, I was unable to find one. So, like most users, I ended up installing WordPress which suited my needs until a week ago, when Google emailed me.

Read on...

 

This was my first serious TextPress plugin.

This plugin will enable your TextPress install to be logged by Google Analytics.

It ads the necessary javascript code to log your blog, plus, it also logs the downloads of regular filenames which end with a specific extension; these extensions are defined by you; and also external links.

Configuration

The necessary configuration is:

  • UID: Google Analytics' UID. The UID is needed for Google Analytics to log your website stats. Your UID can be found by looking in the JavaScript Google Analytics gives you to put on your page. Look for your UID in between the javascript:

      var pageTracker = _gat._getTracker("UA-111111-11");
    

    In this example you would put UA-11111-1 in the UID box.

There are other, more advanced configuration options:

  • Admin Logging: Disabling this option will prevent all logged in TextPress admins from showing up on your Google Analytics reports. A TextPress admin is defined as a user with a level 4 or higher.

  • Outbound Link Tracking: Disabling this option will turn off the tracking of outbound links.
    It's recommended not to disable this option unless you're a privacy advocate (now why would you be using Google Analytics in the first place?) or it's causing some kind of weird issue.

  • Google Analytics External Path Prefix: This will be the path shown on Google Analytics regarding external links. Consider the following link:

    <a href="http://textpress.pocoo.org/">TextPress</a>
    

    The above link will be shown as(for example):

    /external/textpress.pocoo.org/
    

    Outbound link tracking must be enabled for external links to be tracked.

  • Download Extensions To Track: Enter any extensions of files you would like to be tracked as a download. For example to track all MP3s and PDFs enter mp3,pdf.
    Outbound link tracking must be enabled for downloads to be tracked.

  • Tracking Domain Name: If you're tracking multiple subdomains with the same Google Analytics profile, like what's talked about here, enter your main domain here. For more info, please visit the previous link.

You can submit bugs and/or new features to DevNull

Download It

 

This is a TextPress theme ported from WordPress.

Here's a preview of it:

You can submit bugs and/or new features to DevNull

Download It

 

This is the same as the "Latest Comments" TextPress widget except it also shows 'n' words(configurable) words of each comment.
Not much, buy usefull

You can submit bugs and/or new features to DevNull

Download It

 

TextPress jQuery ImgBox plugin support.

Usage:

<span class="imagebox">
  <a href="/_uploads/my_image1.png">
    <img src="/_uploads/my_image1.thumbnail.png" />
  </a>
  <a href="/_uploads/my_image2.png">
    <img src="/_uploads/my_image2.thumbnail.png">
  </a>
</span>

The needed step is to wrap your series of image links in, for example a span with the class imagebox.

This way you're image link will be opened by jQuery's ImageBox plugin.

Read more about jQuery's ImgBox plugin and it's usage.

You can submit bugs and/or new features to DevNull

Download It

 

This was my first plugin for TextPress. A theme to get my old blog looks into TextPress.

Here's a preview of it:

It's the theme this blog uses

You can submit bugs and/or new features to DevNull

Download It

 

Here's a practical idea which I have in use in a project of mine.

Most of you probably use some javascript library or have some javascript files that you use in your pylons application.

There's also some talk going on related to javascript files compression, and more recently, minification.

While I'm developing, I like to use the normal(non compressed) javascript files, because it helps on debuging. But for production, using compressed javascript files reduces page load times.

Pylons Webhelpers comes with a useful function to help you include javascript files on your templates, javascript_include_tag.

The idea I had was at first, make that function provide the minified version of the JS file if we're not running our application in debug mode. If we are on debug mode, server the normal file.

So, I added a minified option to that function above, which does just that.

After a while, I wanted to know how I could minify my own javascript files, and I found out about JSMin. There's also a python version of it.

That's when I also thought, hell, I could minify my own javascript files upon request, and even cache that so the routine only runs once.

Read on...

 

So, you're like me and like to have trac constantly logging to file and you hate those files getting huge?

It is assumed that you keep all your trac environments on the same basedir, for example /var/lib/trac/.

Here's a simple logrotate config file(normaly under /etc/logrotate.d/):

/var/lib/trac/*/log/trac.log {
weekly
rotate 7
missingok
create 640 www-data www-data
compress
}

I hope you enjoy this simple solution.

 

I recently bought a 3G wireless card to use with my laptop, a ZTE, model MF622.

Since the first time I tried linux, also the first time I encountered this kind of problems with my usb ADSL modem, and this being an usb modem also, I knew I was going to have troubles.

At first I tried USB ModeSwitch which has experimental support for ZTE's MF620 model with no luck. I then followed the instructions on the site to snoop the usb comunication under M$ Win to get the messages being sent to the device so I could mimic that under linux. Still, no luck.

I then tried to code a python script which used the libusb so that I could make the device switch to the modem configuration. Still, no luck.

I spent a lot of time on this subject and then one time I removed the usb_storage module while hal was waiting for the device to settle down and guess what!? After a few seconds, the device changed itself to the modem configuration. All I needed now was to automate this procedure.

Read on...