Opened 7 years ago
Last modified 7 years ago
#12925 closed defect
linkresolvers should be sorted by name — at Version 1
| Reported by: | Jun Omae | Owned by: | Peter Suter |
|---|---|---|---|
| Priority: | normal | Component: | WikiAutoCompletePlugin |
| Severity: | normal | Keywords: | |
| Cc: | Trac Release: | 1.0 |
Description (last modified by )
Currently, linkresolvers suggests unsorted link names. I think the suggestion should be sorted by name.
The 20 link resolvers are defined by Trac core.
>>> from trac.test import EnvironmentStub >>> from trac.loader import load_components >>> from trac.wiki.api import WikiSystem >>> env = EnvironmentStub() >>> load_components(env) >>> wikisys = WikiSystem(env) >>> names = set() >>> for provider in wikisys.syntax_providers: ... for name, resolver in provider.get_link_resolvers(): ... names.add(name) ... >>> names = sorted(names) >>> len(names) 20 >>> names ['attachment', 'browser', 'bug', 'changeset', 'comment', 'diff', 'export', 'htdocs', 'log', 'milestone', 'query', 'raw-attachment', 'report', 'repos', 'search', 'sha', 'source', 'ticket', 'timeline', 'wiki']
-
wikiautocomplete/htdocs/js/wikiautocomplete.js
diff --git a/wikiautocomplete/htdocs/js/wikiautocomplete.js b/wikiautocomplete/htdocs/js/wikiautocomplete.js index 22e1899..34da355 100644
a b jQuery(document).ready(function($) { 78 78 79 79 ], { 80 80 appendTo: $('body'), 81 maxCount: 20 81 82 }); 82 83 }); -
wikiautocomplete/web_ui.py
diff --git a/wikiautocomplete/web_ui.py b/wikiautocomplete/web_ui.py index 4afa1f4..ea81c25 100644
a b class WikiAutoCompleteModule(Component): 74 74 75 75 if strategy == 'linkresolvers': 76 76 wiki = WikiSystem(self.env) 77 completions = [] 78 for provider in wiki.syntax_providers: 79 for name, resolver in provider.get_link_resolvers(): 80 if name.startswith(term): 81 completions.append(name) 82 self._send_json(req, completions) 77 completions = set(name for provider in wiki.syntax_providers 78 for name, resolver 79 in provider.get_link_resolvers() 80 if name.startswith(term)) 81 self._send_json(req, sorted(completions)) 83 82 84 83 elif strategy == 'ticket': 85 84 try:
Note: See
TracTickets for help on using
tickets.


