22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/tdiary/core_ext.rb', line 22
def make_link
r = %r<(((http[s]{0,1}|ftp)://[\(\)%#!/0-9a-zA-Z_$@.&+-,'"*=;?:~-]+)|([0-9a-zA-Z_.-]+@[\(\)%!0-9a-zA-Z_$.&+-,'"*-]+\.[\(\)%!0-9a-zA-Z_$.&+-,'"*-]+))>
return self.
gsub( / /, "\001" ).
gsub( /</, "\002" ).
gsub( />/, "\003" ).
gsub( /&/, '&' ).
gsub( /\"/, "\004").
gsub( r ){ $1 == $2 ? "<a href=\"#$2\">#$2</a>" : "<a href=\"mailto:#$4\">#$4</a>" }.
gsub( /\004/, '"' ).
gsub( /\003/, '>' ).
gsub( /\002/, '<' ).
gsub( /^\001+/ ) { $&.gsub( /\001/, ' ' ) }.
gsub( /\001/, ' ' ).
gsub( /\t/, ' ' * 8 )
end
|