Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Repair a Keynote '09 outline mode bug Apps
When I upgraded to iWork '09, I found an annoying bug that hurts my typical workflow for Keynote -- working in a wide outline-mode left column. Apparently, once I set a width for the left column in outline mode, the saved file remembers that width, but doesn't properly restore the width when the file is loaded, effectively hiding the scrollbar and part of the text behind the slide and notes right column. Ugh.

After saving and comparing a few good and bad files, I figured out that I could simply delete the preference for the outline-column width from a "bad" file, and get back the default width for the next edit, and that would suffice. So, I wrote this Perl script to automate the process. It should work from the command line in a Terminal window to fix up the broken keynote file.
#!/usr/bin/env perl
use strict;
$|++;

use Cwd qw(abs_path);
use File::Temp qw(tempdir);

@ARGV = map abs_path($_), @ARGV
  or die "$0: please give keynote zip names on command line";

while (@ARGV) {
  my $key = shift;
  -e $key or die "$key not found";

  my $tempdir = tempdir( CLEANUP => 1 );
  chdir $tempdir or die "cannot cd $tempdir: $!";

  system "unzip", $key;

  my $flag = 0;
  {
    local @ARGV = "index.apxl";
    local $^I = "~";
    while (<>) {
      s#(<key:BGShowUIStateOutlineWidth>.*?</key:BGShowUIStateOutlineWidth>)##
        and $flag = 1 and warn "removed $1";
      print;
    }
  }
  (warn "no changes made, skipping\n"), next unless $flag;
  my $old_key = $key;
  $old_key =~ s/\.key$/ OLD.key/ or $old_key .= "-OLD";
  (warn "unsafe to mv $key $old_key, skipping\n"), next if -e $old_key;  rename $key, $old_key or die "cannot mv $key $old_key: $!";
  system "zip", "-r", $key, '.';
}
To use this code, put it into a file named fix-keynote or whatever, then invoke fix-keynote followed by the name or names of the Keynote file(s) you want fixed. (A quick way to get the right name is to simply drag the Keynote file into the Terminal window). A backup file is automatically created.

[robg adds: I haven't tested this one.]
    •    
  • Currently 1.43 / 5
  You rated: 1 / 5 (7 votes cast)
 
[8,061 views]  

Repair a Keynote '09 outline mode bug | 1 comments | Create New Account
Click here to return to the 'Repair a Keynote '09 outline mode bug' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Repair a Keynote '09 outline mode bug
Authored by: edified on Mar 11, '09 10:01:50PM

I verified the bug. I haven't tried the script as I don't use Outline Mode. You reported this to Apple, yeah?



[ Reply to This | # ]