# HG changeset patch # User Kim Alvefur # Date 1395585700 -3600 # Node ID a47a1de8993eaa8f0beeb650535c0e3b78327b09 # Parent e5903656c21adf956c6e1f0eddad6f9e9227ce72 plugins.ietf: Update patterns diff -r e5903656c21a -r a47a1de8993e plugins/ietf.lua --- a/plugins/ietf.lua Sun Mar 23 15:41:07 2014 +0100 +++ b/plugins/ietf.lua Sun Mar 23 15:41:40 2014 +0100 @@ -54,10 +54,10 @@ link, match = self.data:match("\n(" .. number .. ")%s*([^\n]*)"); count = 1 else - local pat = string:gsub("[()]", function(s) return "%" .. s end) - :gsub("[%[]",function(s) return "%" .. s end) + local pat = string:gsub("[-()%[]", "%%%1") :gsub("%%(%b[])",function(s) return (#s > 2 and "" or "%") .. s end) - :gsub("\n+", " "):gsub("\\n", ""); + :gsub("\n+", " "):gsub("\\n", "") + :gsub("%w", function(s) return '['..s:lower()..s:upper()..']' end) debug("fulltext search for \"%s\"", pat); --link, match = self.data:match("\n(%d%d%d%d) ([^\n]-"..pat.."[^\n]*)"); for l,m in self.data:gmatch("\n(%d%d%d%d) ([^\n]-"..pat.."[^\n]*)") do @@ -106,10 +106,10 @@ function data.draft:_search(string, cb) debug("really search for %s", string); - local pat = string:gsub("[()]", function(s) return "%" .. s end) - :gsub("[%[]",function(s) return "%" .. s end) + local pat = string:gsub("[-()%[]", "%%%1") :gsub("%%(%b[])",function(s) return (#s > 2 and "" or "%") .. s end) - :gsub("\n+", " "):gsub("\\n", ""); + :gsub("\n+", " "):gsub("\\n", "") + :gsub("%w", function(s) return '['..s:lower()..s:upper()..']' end) debug("fulltext search for \"%s\"", pat); local match = self.data:match("\n([^\n]-"..pat.."[^\n]*)")