Changeset 12875 for lang/vim

Show
Ignore:
Timestamp:
05/31/08 07:39:24 (6 months ago)
Author:
ujihisa
Message:

lang/vim/misc/mixi.vim: patch from Sixeight <if an image is uri then fetch the image by wget>

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/vim/misc/mixi.vim

    r12695 r12875  
    88ruby << EOF 
    99class Mixi 
    10   def initialize(email, password, mixi_premium = false) 
     10  def initialize(email, password, mixi_premium = false, image_dir = '~/.vim/mixi_images') 
    1111    require 'kconv' 
    1212    require 'rubygems' 
    1313    require 'mechanize' 
    1414 
     15    @image_dir = File.expand_path image_dir 
    1516    @email, @password, @mixi_premium = 
    1617      email, password, mixi_premium 
     
    3132    form.diary_title = title 
    3233    form.diary_body = self.class.magic_body(body) 
     34    get_image images 
    3335    images[0, 3].each_with_index do |img, i| 
    3436      if /darwin/ =~ RUBY_PLATFORM && /\.png$/i =~ img 
    3537        imgjpg = '/tmp/mixi-vim-' << File.basename(img).sub(/\.png$/i, '.jpg') 
    36         system "sips -s format jpeg --out #{imgjpg} #{img}" 
     38        system "sips -s format jpeg --out #{imgjpg} #{img} > /dev/null 2>&1" 
    3739        img = imgjpg 
    3840      end 
    39       eval "form.file_uploads[#{i}].file_name = '#{img}'" 
     41      form.file_uploads[i].file_name = img 
    4042    end 
    4143    page = @agent.submit form 
     
    5153  def self.magic_body(body) 
    5254    body.gsub(/^(  )+/) {|i| ' '.toeuc * (i.length/2) } 
     55  end 
     56 
     57  def get_image(images) 
     58    images.each_with_index do |img, i| 
     59      if img =~ %r{^http://} 
     60        path = 
     61          File.join @image_dir, i.to_s + File.extname(img) 
     62        unless File.exist? @image_dir 
     63          Dir.mkdir @image_dir 
     64        else 
     65          Dir.chdir(@image_dir) do 
     66            Dir.entries(@image_dir). 
     67              each {|f| File.unlink f if File.file? f } 
     68          end 
     69        end 
     70        system "wget -O #{path} #{img} > /dev/null 2>&1" 
     71        if File.exist? path and !File.zero? path 
     72          images[i] = path 
     73        else 
     74          images.delete_at i 
     75        end 
     76      end 
     77    end 
    5378  end 
    5479end