- Remember last long tag delimiter

- Select delimiter field when switching to Split mode
- Escape special regexp characters
- Fix a window resize bug
This commit is contained in:
Dan Stillman 2009-05-30 22:37:28 +00:00
parent 4ea030b458
commit 2d0a197293
3 changed files with 10 additions and 2 deletions

View file

@ -6,6 +6,9 @@ var Zotero_Long_Tag_Fixer = new function () {
document.getElementById('zotero-old-tag').value = _oldTag;
document.getElementById('zotero-old-tag-delimiter').nextSibling.value = 'character'; // TODO: localize
var delimiter = Zotero.Prefs.get('lastLongTagDelimiter');
document.getElementById('zotero-old-tag-delimiter').value = delimiter;
var lastMode = Zotero.Prefs.get('lastLongTagMode');
if (!lastMode) {
lastMode = 0;
@ -23,6 +26,7 @@ var Zotero_Long_Tag_Fixer = new function () {
case 0:
var buttonLabel = "Save Tags";
this.updateTagList();
document.getElementById('zotero-old-tag-delimiter').select();
break;
case 1:
@ -54,7 +58,8 @@ var Zotero_Long_Tag_Fixer = new function () {
var delimiter = document.getElementById('zotero-old-tag-delimiter').value;
if (delimiter) {
var re = new RegExp("\\s*" + delimiter + "\\s*");
Zotero.Prefs.set('lastLongTagDelimiter', delimiter);
var re = new RegExp("\\s*" + delimiter.replace(/([\.\-\[\]\(\)\?\*\+])/g, "\\$1") + "\\s*");
var tags = _oldTag.split(re);
}
@ -79,6 +84,8 @@ var Zotero_Long_Tag_Fixer = new function () {
li.setAttribute('type', 'checkbox');
li.setAttribute('checked', 'true');
}
window.sizeToContent();
}

View file

@ -37,7 +37,7 @@
<hbox align="center">
<label>Split at the </label>
<!-- // TODO: localize -->
<textbox id="zotero-old-tag-delimiter" size="1" value=";"
<textbox id="zotero-old-tag-delimiter" size="1"
oninput="this.nextSibling.value = this.value.length > 1 ? 'characters' : 'character'; Zotero_Long_Tag_Fixer.updateTagList();"/>
<label/>
</hbox>

View file

@ -43,6 +43,7 @@ pref("extensions.zotero.lastAbstractExpand",0);
pref("extensions.zotero.lastRenameAssociatedFile", false);
pref("extensions.zotero.lastViewedFolder", 'L');
pref("extensions.zotero.lastLongTagMode", 0);
pref("extensions.zotero.lastLongTagDelimiter", ";");
//Tag Cloud
pref("extensions.zotero.tagCloud", false);