Changeset 11311 for lang/vim/misc

Show
Ignore:
Timestamp:
05/10/08 01:07:39 (5 years ago)
Author:
ujihisa
Message:

lang/vim/misc/nowa.vim: add super-pre-notation

Files:
1 modified

Legend:

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

    r10095 r11311  
    99class Nowa 
    1010  def initialize(nowa_id, password) 
     11    require 'enumerator' 
    1112    require 'rubygems' 
    1213    require 'mechanize' 
     
    3738 
    3839  def self.magic_body(body) 
    39     body.gsub(%r|^http://.*|) {|m| %|<a href="#{m}">#{m}</a>| } 
     40    body = body.gsub(%r|^http://.*|) {|m| %|<a href="#{m}">#{m}</a>| } 
     41    pre_p = false 
     42    body.enum_for(:each_line).map {|line| 
     43      if pre_p 
     44        if line.chomp == '|>' 
     45          pre_p = false 
     46          '</pre>' 
     47        else 
     48          line.gsub('<', '&lt;').gsub('>', '&gt;') 
     49        end 
     50      else 
     51        if line.chomp == '<|' 
     52          pre_p = true 
     53          '<pre>' 
     54        else 
     55          line 
     56        end 
     57      end 
     58    }.join 
    4059  end 
    4160end