Google Reader - Printing Full Text For All Items

October 9th, 2007 by Stephen Cronin (4,234 views)

EDIT: There is no longer any need for this hack - simply get the latest version (2.0) of the Google Reader Print Button script.

I normally use a desktop feed reader, but I’ve recently been trying out web based feed readers. Google Reader seems to be the best, but it lacks the ability to print more than one full text item in the Expanded View. A simple hack to the Google Reader Print Button script for Greasemonkey fixes this.

The Problem

I find printing multiple full text entries useful when catching up with feeds I’ve gotten behind on. Unfortunately, Google Reader only prints the currently selected item. There is no way to select more than one item.

Bloglines does allow you to print multiple entries, so I’ve been using Google Reader to read feeds I’m up to date with, and using Bloglines to print feeds for those I’m not. Messy!

Google Reader Print Button

Enter K-IntheHouse over at ShanKri-la, who has a habit of making my life easier by writing about Firefox extensions I don’t know about. This time he mentioned the Google Reader Print Button script in his Top 15 Greasemonkey Scripts for GMail & Google Reader post. The description (from userscripts.org) sounded promising:

Add a print button to Google Reader at the bottom bar (with Previous/Next Item). This button open a new window with the content of the selected item, and launches the printing window. If no item is selected, prints all loaded items.

I installed this ASAP. The initial results were a little disappointing. In Google Reader’s List View, it prints all items loaded (Google Reader doesn’t load all items until you scroll down), but it only prints a one line summary.

When you first go to the Expanded View, it prints the full text for all items loaded. However, there may may only be a handful of items loaded and as soon as you scroll down, Google Reader automatically selects an item. After this, it will only print the full text for the one item that is selected.

Note: The Print Button doesn’t appear for me if I just log into Google Reader and click on a Feed. I need to enter the http://www.google.com/reader/view/ URL in the address bar (and press Enter), then click on a Feed for the button to appear.
UPDATE: A solution for this can be found in the comment left by Jay below

Hacking The Script

Thankfully, this problem can be easily solved by making a very simple hack to the script. Here are the steps (assuming you have installed the script):

  1. Right-Click on the Greasemonkey icon in Firefox
  2. Click Manage User Scripts and a dialog box will open
  3. Select Google Reader Print Button from the list
  4. Click the Edit button (at the bottom of the dialog box)
  5. If asked for the location of a text editor, find one on your hard drive (if you use Notepad, start by looking for C:\Windows\Notepad.exe)
  6. Make the change shown below, then Save, Close and click Okay
  7. Refresh (F5) Google Reader to make sure the changes are loaded

The change is to simply comment out two lines of code by adding // in front of them. Find the following (around line 14):

   if (!entry) {
    entry = document.getElementById('entries');
   }

and change it to:

//   if (!entry) {
    entry = document.getElementById('entries');
//   }

You should now be able to print all items loaded (in the Expanded View). You have to scroll down to load items, so scroll down as far as you want, then click the Print Button.

If you scroll down so that 60 entries are loaded, it will print 60 full text items. If 100 entries are loaded, 100 will be printed. For one feed, I found I could go back all the way to December 2006!

This is just a quick and dirty hack. The script now declares the entry variable (on the line before this) and sets it to the current entry, then immediately sets it to all entries. We could merge these two lines into one but it’s just simpler to do it this way.

You can easily reverse these changes if you want to return the script to its default behaviour.

The Final Word

This is just a simple hack, but it makes my life easier. Now I can print full text entries in Google Reader, going back as far as I like, so I can catchup with my reading away from the computer. I know not many people want to do this, but if it can help even a few, I’ll be happy.

Subscribe To Site:
Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • StumbleUpon
  • PlugIM
  • Sphinn
  • Digg
  • del.icio.us
  • Netvouz
  • MisterWong
  • Bumpzee
  • Reddit
  • Technorati
  • co.mments
Related posts

Tags: , , , ,

14 Comments

  1. Stephen.. appreciate the overwhelming kindness you show me! :-) Likewise, I always leave your blog learning something new like this cool hack that I’ve already added to my script. Most people who can understands this stuff don’t share the knowledge.. you do and in a succinct way that even I can understand. Great work, Stephen.

  2. K, Thanks for the compliments and Thanks for the Stumble.

  3. Thanks for the hack, will help me a lot with my rss subscribers.

  4. Prestamos, I hope it helps. Good luck and thanks for leaving a comment.

  5. in regards to this:
    Note: The Print Button doesn’t appear for me if I just log into Google Reader and click on a Feed. I need to enter the http://www.google.com/reader/view/ URL in the address bar (and press Enter), then click on a Feed for the button to appear.

    this is because for some reason, if you go into the included pages, under manage user scripts, it is http://www.google.com/reader/view/
    this should be changed to:
    http://www.google.com/reader/view/*

    with the “*” at the end of “http://www.google.com/reader/view/”
    magic!

  6. J, Thank you very much! Works a treat and makes it much more useable. I’ll edit the post slightly, so it points to your comment. Thanks again!

  7. Hi Stephen,
    thanks a lot for this one, it just saved me an afternoon full of frustration. Although I am definitely a lover of Google reader for the fact that articles are stored over the entire lifecycle and not just temporarily. However, the apparent lack of core functionality still illustrates how much in Beta this reader is: There is no support for printing, for renaming tags, there is no support for conditional views: e.g. All posts I have tagged with car and with cool or similar… So there is definitely a long way to go but I’m optimistic we will have such features soon.
    In the meantime I will promote your hack.

    Cheers,
    Martin

  8. Hi Martin,

    I’m glad it helped. I’m a fan of Google Reader too, but you’re right - there’s lots of functionality that needs to be added. I’d had frustrations with everything you mentioned there. But at the end of the day I still use it and I’m hopeful they’ll get it sorted out!

  9. dgsinclair Says:
     (Reply)

    I have added this script, and changed the URL from
    http://www.google.com/reader/view/ to
    http://www.google.com/reader/view/*

    In both the script itself and in the “included pages” section of the greasemonkey app, but the button does not show up. How come? I have also commented out the three lines in the script. Help!

  10. dgsinclair Says:
     (Reply)

    Dang, NM, I was running it in “IE” mode using IE tab. Doh!

  11. Hi Dgsinclair,

    See - its always IE’s fault! :)

    Glad it’s sorted now…

  12. To print a long text from Google Reader, I use the old dumb way.
    Copying it into MS Word than print it from there.

    This hack would speed up my productivity.

    Thank’s

  13. Julien Gilles Says:
     (Reply)

    Hi, i am the author of the greasemonkey script. Thanks for all your remarks. I have corrected the missing ‘*’ in the url filter, and modified a little the script. Now two buttons are available, one to print the current selected item, the second one to print all items loaded. I think this is the easier way to handle both cases, but feel free to send other hacks.

    1. Hi Julien,

      Thanks for stopping by and THANKS for writing the Google Reader Print Button script in the first place. Great work!

      Even better now that you’ve updated the script. This is better than using a hack, so I’ll edit this article to tell people to come and get the latest version. Thanks again!

Leave a comment

Rules: Leave your name! Enter YourName@YourKeywords and KeywordLuv will use YourKeywords as the anchor text. No inappropriate or offensive comments. No links to inappropriate or offensive sites. Comments must contribute to the discussion.

KeywordLuv

This site uses KeywordLuv. Enter YourName@YourKeywords in the Name field to take advantage.


WordPress Plugins by Stephen Cronin
DualFeeds: Offer both full text & summary feeds. Let your readers choose!
IFrameWidgets: Stop slow javascript widgets breaking your page layout!
FeedEntryHeader: Add a copyright statement to the TOP of your feed!
LocalCurrency: Show currency values to readers in their own currency!
KeywordLuv: Reward your commentators with keyword rich anchor text!