Commit graph

226 commits

Author SHA1 Message Date
Dan Stillman
e2d3cc3f0d Update zotero://select to use new URLs and wait for items list load
Closes #541
2014-09-23 01:13:38 -04:00
Dan Stillman
755ead2119 Update zotero:// extensions (report, timeline, etc.) for async DB, and more
- Protocol handler extensions can now handle promises and can also make
  data available as it's ready instead of all at once (e.g., reports now
  output one entry at a time)
- zotero:// URL syntaxes are now more consistent and closer to the web
  API (old URLs should work, but some may currently be broken)

Also:

- Code to generate server API, currently available for testing via
  zotero://data URLs but eventually moving to HTTP -- zotero://data URLs match
  web API URLs, with a different prefix for the personal library (/library vs.
  /users/12345)
- Miscellaneous fixes to data objects

Under the hood:

- Extensions now return an AsyncChannel, which is an nsIChannel implementation
  that takes a promise-yielding generator that returns a string,
  nsIAsyncInputStream, or file that will be used for the channel's data
- New function Zotero.Utilities.Internal.getAsyncInputStream() takes a
  generator that yields either promises or strings and returns an async input
  stream filled with the yielded strings
- Zotero.Router parsers URLs and extract parameters
- Zotero.Item.toResponseJSON()
2014-09-09 00:36:29 -04:00
Dan Stillman
c5ee3651fe Don't try to load uncommitted files 2014-09-09 00:35:35 -04:00
Dan Stillman
89833e2da7 Use 'Zotero' object instead of this._zotero in autocomplete 2014-08-10 14:54:41 -04:00
Dan Stillman
00484c5e69 Closes #527, Asyncify autocomplete 2014-08-10 14:52:03 -04:00
Dan Stillman
f5896dbb8d Remove synchronous database methods
This required doing additional caching at startup (e.g., item types and fields)
so that various methods can remain synchronous.

This lets us switch back to using the current Sqlite.jsm. Previously we were
bundling the Fx24 version, which avoided freezes with locking_mode=EXCLUSIVE
with both sync and async queries.

Known broken things:

  - Autocomplete
  - Database backup
  - UDFs (e.g., REGEXP function used in Zotero.DB.getNextName())
2014-08-09 18:10:32 -04:00
Dan Stillman
db0fa3c33e Async DB megacommit
Promise-based rewrite of most of the codebase, with asynchronous database and file access -- see https://github.com/zotero/zotero/issues/518 for details.

WARNING: This includes backwards-incompatible schema changes.

An incomplete list of other changes:

- Schema overhaul
  - Replace main tables with new versions with updated schema
  - Enable real foreign key support and remove previous triggers
  - Don't use NULLs for local libraryID, which broke the UNIQUE index
    preventing object key duplication. All code (Zotero and third-party)
    using NULL for the local library will need to be updated to use 0
    instead (already done for Zotero code)
  - Add 'compatibility' DB version that can be incremented manually to break DB
    compatibility with previous versions. 'userdata' upgrades will no longer
    automatically break compatibility.
  - Demote creators and tags from first-class objects to item properties
- New API syncing properties
  - 'synced'/'version' properties to data objects
  - 'etag' to groups
  - 'version' to libraries
- Create Zotero.DataObject that other objects inherit from
- Consolidate data object loading into Zotero.DataObjects
- Change object reloading so that only the loaded and changed parts of objects are reloaded, instead of reloading all data from the database (with some exceptions, including item primary data)
- Items and collections now have .parentItem and .parentKey properties, replacing item.getSource() and item.getSourceKey()
- New function Zotero.serial(fn), to wrap an async function such that all calls are run serially
- New function Zotero.Utilities.Internal.forEachChunkAsync(arr, chunkSize, func)
- Add tag selector loading message
- Various API and name changes, since everything was breaking anyway

Known broken things:

- Syncing (will be completely rewritten for API syncing)
- Translation architecture (needs promise-based rewrite)
- Duplicates view
- DB integrity check (from schema changes)
- Dragging (may be difficult to fix)

Lots of other big and little things are certainly broken, particularly with the UI, which can be affected by async code in all sorts of subtle ways.
2014-08-06 22:59:37 -04:00
Dan Stillman
4ea5e2d426 Update code to use 0 instead of NULL for libraryID 2014-08-06 22:14:59 -04:00
Dan Stillman
156f4eb160 Allow items to be moved (not copied) between collections w/modifier key
Cmd on OS X, Shift on Windows/Linux

How do I not get to close a ticket for this?

Unfortunately on Windows it doesn't seem possible to set the cursor
effect to arbitrary states (see note in libraryTreeView.js::
_setDropEffect() for the gory details), so this just uses the default
cursor there. On OS X and Linux the cursor reflects the requested
action.
2014-05-03 11:52:38 -04:00
Dan Stillman
60e5ab8124 Merge branch '4.0'
Conflicts:
	chrome/content/zotero/xpcom/db.js
	chrome/content/zotero/xpcom/fulltext.js
	chrome/content/zotero/xpcom/zotero.js
	chrome/content/zotero/zoteroPane.js
	components/zotero-service.js
	install.rdf
	update.rdf
2014-04-08 18:47:32 -04:00
Simon Kornblith
1ee015317f Don't restart in connector mode on Zotero.init() failure
I broke this in a723c85999
2013-12-11 14:50:48 -05:00
Dan Stillman
6ff0ea6d18 Add -zoterodebug command-line flag to force debug output
This should make it much easier to debug startup errors, particularly in
Standalone.

This also adds a general mechanism to set Zotero initialization options via
command-line flags.
2013-11-30 01:55:48 -05:00
Dan Stillman
5d32fb90ea Merge branch '4.0'
Conflicts:
	chrome/content/zotero/fileInterface.js
	chrome/content/zotero/overlay.js
	chrome/content/zotero/xpcom/schema.js
	chrome/content/zotero/xpcom/zotero.js
	chrome/content/zotero/zoteroPane.js
	install.rdf
	update.rdf
2013-11-24 16:08:46 -05:00
Simon Kornblith
0b92ad0037 Modify behavior on Zotero Standalone launch to account for failure
- Close Zotero pane before database is closed prior to reload, instead
  of waiting until reload is complete
- Show an error message if Zotero Standalone is not accessible when it
  should be
2013-11-05 15:52:40 -05:00
Dan Stillman
d318bca7a4 Allow items to be moved (not copied) between collections w/modifier key
Cmd on OS X, Shift on Windows/Linux

How do I not get to close a ticket for this?

Unfortunately on Windows it doesn't seem possible to set the cursor
effect to arbitrary states (see note in libraryTreeView.js::
_setDropEffect() for the gory details), so this just uses the default
cursor there. On OS X and Linux the cursor reflects the requested
action.
2013-09-06 15:30:37 -04:00
Simon Kornblith
526441c3ca Make translator loading asynchronous
Other changes:
- Factored out Zotero.Translators from Zotero.Translator. The latter
  should be usable in the bookmarklet and connectors without changes.
- configOptions, displayOptions, and hiddenPrefs no longer copy on
  read. I don't think this actually affects any existing code.
- Zotero.Translate._loadTranslator() now returns a promise
2013-08-17 03:15:43 -04:00
Dan Stillman
5787b230f7 Use asynchronous DB and file access for schema checks/updates
This change should improve Firefox startup time. If the Zotero pane is
opened before Zotero has initialized, the pane will be blocked with a
progress bar until it's done. Standalone currently does the same, but it
should be changed to just delay opening the window if possible.

The upgrade wizard has been disabled for schema upgrades, in the hope
that upgrades can be done in a way that won't break compatibility with
earlier versions (or that can at least be done in a way such that we can
put out point releases of the last major version that provide
compatibility during beta/post-upgrade periods).

This patch likely breaks many things, and definitely breaks connector
mode.

This change also removes upgrade steps for databases from Zotero 2.1b2
and earlier. Users with such databases will need to upgrade via Zotero
4.0.x first or delete their data directories and start anew. This should
only affect users who haven't opened Zotero since Nov. 2010.
2013-08-11 21:53:41 -04:00
Simon Kornblith
a723c85999 Return a promise from Zotero.shutdown() 2013-08-09 11:11:01 -04:00
Simon Kornblith
2069b5b396 Fix switching in and out of connector mode
Broken by 9d3f55be51
2013-08-09 10:55:56 -04:00
Dan Stillman
7572eebcd1 Offer autocomplete of same creator for different creator types
If a creator exists on an item but is a different creator type than the
one being entered, show creator in autocomplete list.
2013-08-07 15:25:15 -04:00
Dan Stillman
9d3f55be51 Use async DB for autocomplete
This was probably hanging previously because I was passing a JS function for
onProgress, which apparently isn't allowed.
2013-08-07 11:01:12 -04:00
Dan Stillman
10e9c5e0b7 Restore ZFS quota warning
Possible that this hasn't shown since 4.0?
2013-07-08 20:13:47 -04:00
Dan Stillman
65c7a5988b Limit autocomplete for tags and fields to current library
Not done for advanced search

Should be easy for saved search, but not yet done
2013-04-19 15:10:05 -04:00
Simon Kornblith
946c754ae7 Remove redundant line 2013-03-18 20:33:09 -04:00
Dan Stillman
d2f028d797 Tag colors, synced settings, and (stopgap) silent DB upgrades
- New tag colors support, with the ability to assign colors to up to 6
  tags per library. Tags with colors assigned will show up at the top of
  the tag selector and can be added to (and removed from) selected items
  by pressing the 1-6 keys on the keyboard. The tags will show up as
  color swatches before an item's title in the items list.
- Synced settings, with Notifier triggers when they change and
  accessible via the API (currently restricted on the server to
  'tagColors', but available for other things upon request)
- Silent DB upgrades for backwards-compatible changes. We'll do
  something fancier with async DB queries in 4.0, but this will work for
  changes that can be made without breaking compatibility with older
  clients, like the creation of new tables. The 'userdata' value is
  capped at 76, while further increments go to 'userdata2'.

TODO:

- Try to avoid jitter when redrawing swatches
- Optimize tag color images for retina displays
- Redo attachment dots in flat style?
- Clear all colors from an item with 0 (as in Thunderbird), but I don't
  think we can do this without undo
2013-03-03 06:23:25 -05:00
Dan Stillman
0061ff3ca5 Merge branch '3.0'
Conflicts:
	chrome/content/zotero/preferences/preferences.xul
	chrome/content/zotero/xpcom/data/item.js
	chrome/content/zotero/xpcom/utilities_translate.js
2013-02-04 07:02:38 -05:00
Dan Stillman
46e3e7293e Fix "results.sort is not a function" in tags autocomplete
This occured if there were no autocomplete results for an entered tag
string.
2013-02-04 05:03:12 -05:00
Simon Kornblith
dbf2bc265f Merge branch '3.0'
Conflicts:
	chrome/content/zotero/recognizePDF.js
	chrome/content/zotero/xpcom/utilities.js
2013-01-21 02:01:08 -05:00
Simon Kornblith
94619403ca Tweak loading process 2013-01-21 01:58:01 -05:00
Dan Stillman
596c6da3ee Remove Commons code, which contains E4X
Some items pane code is still in place, since it's a decent example of
dynamic items pane loading.
2013-01-15 03:23:37 -05:00
aurimasv
b1cc6e260e Load XRegExp into Zotero.XRegExp and Zotero.Utilities.XRegExp and make it accessible from translators. 2012-12-19 06:36:08 -06:00
Dan Stillman
bb93f019dc File sync overhaul
- New promise-based architecture
- Library-specific file sync queues, allowing other libraries to
  continue if there's an error in one library
- Library-specific sync errors, with error icons next to each library
- Changed file uploading in on-demand download mode, which had been missing
- On-demand download progress indicator in middle pane
- More accurate progress indicator
- Various tweaks and bug fixes
- Various future tweaks and bug fixes
2012-12-11 15:16:40 -05:00
Dan Stillman
4caae896cf Merge branch '3.0'
Conflicts:
	chrome/content/zotero/xpcom/attachments.js
	chrome/content/zotero/xpcom/translation/translate_item.js
	install.rdf
	update.rdf
2012-11-23 01:49:32 -05:00
Dan Stillman
9665e67042 Fix reports for notes with " " displaying as HTML markup
Reports are now always served as text/html
2012-11-21 19:42:47 -05:00
Simon Kornblith
585e5981f6 Merge branch '3.0'
Conflicts:
	chrome/content/zotero/xpcom/storage/webdav.js
	chrome/content/zotero/xpcom/storage/zfs.js
2012-11-12 16:04:39 -05:00
Simon Kornblith
f6c3f58bc2 Merge commit '920df48d1da4f9bf33bf1a01c60a2131e589d29c' into 3.0 2012-11-12 00:09:23 -05:00
Simon Kornblith
bd367dcd85 Merge branch '3.0' 2012-11-11 17:15:30 -05:00
Simon Kornblith
425b2161cc Fix saving snapshots with Gecko 17 2012-11-11 17:14:05 -05:00
aurimasv
025eed93be Fix CSS url() links when served from zotero:// protocol 2012-11-11 01:50:26 -06:00
Dan Stillman
61c36b0523 Add ZoteroPaneOpen command line argument to open Zotero automatically 2012-11-10 19:38:22 -05:00
Simon Kornblith
57c3d190b4 Merge branch 'kill-e4x'
Conflicts:
	chrome/content/zotero/xpcom/integration.js
2012-06-25 00:42:32 -04:00
Simon Kornblith
66815c118f Kill E4X in Zotero.Style
Also kill enstyle.js, since it no longer works
2012-06-24 23:32:08 -04:00
Simon Kornblith
ac19b0490a Merge branch 'no-new-collection-on-import' 2012-06-10 22:39:41 -04:00
Simon Kornblith
68365e2297 Allow user to control whether files are imported into a new collection.
Adds three new preferences controlling whether a new collection is created upon import:
- extensions.zotero.import.createNewCollection.fromFile
	Controls whether a new collection is created by import from cog menu
- extensions.zotero.import.createNewCollection.fromClipboard
	Controls whether a new collection is created by import from clipboard
- extensions.zotero.import.createNewCollection.fromFileOpenHandler
	Controls whether a new collection is created when import is initiated by
	double-clicking a file or by dragging it over Zotero. This preference applies only to
	Zotero Standalone, and is configurable in the dialog that appears asking the user
	to confirm the import.

Closes #19, [papercuts] (26) Clipboard import into an open collection
2012-06-10 11:05:39 -04:00
Simon Kornblith
4e5d4281f1 Merge branch '3.0' 2012-05-26 18:24:52 -04:00
Dan Stillman
66bfaaae13 Fix sorting of autocomplete tags dropdown (since Fx9 or so) 2012-05-10 18:55:17 -04:00
Simon Kornblith
5894a9511d Tweak RDF loading code 2012-05-05 16:53:00 -04:00
Simon Kornblith
6e3dfc45ee Merge pull request #103 from aurimasv/tabulator
Tabulator v0.8 RDF Parser
2012-05-05 12:35:24 -07:00
Dan Stillman
d456117ebe Merge branch '3.0' 2012-05-03 17:56:32 -04:00
aurimasv
1942fb6762 Remove compatibility hack from rdf.js. Fix Zotero code instead. Move all setup to init.js 2012-04-29 20:30:37 -05:00
aurimasv
ea767e5647 Set up environment for RDF parser 2012-04-26 17:36:35 -05:00
Dan Stillman
5b267b4264 Fix sorting of base-mapped fields in reports 2012-04-26 16:28:55 -04:00
Dan Stillman
f1aa68f82b Simplify the file sync code a bit
Just call Zotero.Sync.Storage.[ZFS/WebDAV] directly

This probably breaks some things.
2012-03-21 19:39:40 -04:00
Simon Kornblith
09813b145d Merge branch '3.0' 2012-02-14 15:00:07 -05:00
Simon Kornblith
a01fcd360f Remove redundant code 2012-02-12 23:35:39 -05:00
Simon Kornblith
703d18ecb9 Remove antiquated code 2012-02-11 00:39:58 -05:00
Simon Kornblith
ef9040c46d Revert "Remove antiquated code"
This reverts commit d5fc04485b.
2012-02-11 00:38:21 -05:00
Simon Kornblith
d5fc04485b Remove antiquated code 2012-02-11 00:34:05 -05:00
Dan Stillman
6c5e155ba7 Merge branch '3.0' 2012-02-09 02:18:15 -05:00
Simon Kornblith
564d27f51c Allow add-ons to be updated via addons.mozilla.org in Zotero Standalone, part 1 2012-02-08 23:06:50 -05:00
Simon Kornblith
a78cd2cf18 Fix WPD leak by loading into a local scope 2012-02-05 18:58:15 -05:00
Simon Kornblith
39c86a791e Use Zotero.debug() instead of dump() in WPD 2012-02-05 18:46:49 -05:00
Dan Stillman
7c4a69b9e1 Merge branch '3.0' 2012-01-17 01:16:47 -05:00
Dan Stillman
2bf4c81a62 Make creator-based report sorting slightly less broken 2012-01-11 19:02:57 -05:00
Dan Stillman
059460a5d2 Merge branch '3.0'
Conflicts:
	chrome/content/zotero/xpcom/storage/webdav.js
	chrome/content/zotero/zoteroPane.js
	chrome/skin/default/zotero/preferences.css
2011-12-17 16:25:58 -05:00
Simon Kornblith
f0bd8beebc Don't load date.js twice. 2011-12-08 04:27:25 -05:00
Dan Stillman
758216638f On-demand download support
Can choose to download files "at sync time" or "as needed"

On-demand defaults to on, but remains off for existing users

To-do:

- Handling of local and remote file changes on on-demand download
  (currently if a file exists it isn't downloaded, which means a
  remotely modified file won't be redownloaded in on-demand mode)
- Additional control over file downloading and retention

Other changes:

- Overhauled entire file syncing architecture
- Replaced numAttachments column with Note and Attachment columns with
  dynamic icons to indicate status
- Double-clicking a parent with a missing best attachment and on-demand
  downloading off no longer loads the parent URL
- Bugs
2011-11-26 03:45:55 -05:00
Simon Kornblith
4666ae972c - Move Zotero.Utilities.Internal and Zotero.Utilities.Translate to separate files
- IE compatibility for translation core
2011-08-31 23:25:48 +00:00
Simon Kornblith
440fc95942 Move startup timing to zotero-service.js 2011-08-24 01:59:56 +00:00
Simon Kornblith
cf0e1e6972 Ask before importing files on double-click 2011-08-18 15:29:13 +00:00
Simon Kornblith
580d0df56d Set toolkit.singletonWindowType pref instead of preventing default command line actions to prevent opening new windows 2011-08-17 08:31:34 +00:00
Simon Kornblith
05f9d2cd6f Open reference formats and CSL files on double-click (currently only on OS X) 2011-08-17 04:51:43 +00:00
Simon Kornblith
bbbc8991f2 - Fix failure to save snapshots, caused by failure to add and remove our request from loadGroup
- Fix a few other issues in ConnectorChannel
2011-08-12 18:10:53 +00:00
Simon Kornblith
b5b3d0a135 Don't package zoteroIntegration typelib after all (reverts r10002) 2011-08-08 17:44:23 +00:00
Simon Kornblith
6b5a3b71f2 Put zoteroIntegration typelib in Zotero trunk. 2011-08-03 23:46:31 +00:00
Dan Stillman
56c7afc47e Duplicate detection:
- Adds a per-library "Duplicate Items" virtual search to the source list -- shows up by default for "My Library" but can be added to and removed from all libraries
- Current matching algorithm is very basic: finds exact title matches (after normalizing case/diacritics/punctuation/spacing) and DOI/ISBN matches (untested)
- In duplicates view, sets are selected automatically; in other views, duplicate items can be selected manually and the merge interface can be brought up with "Merge Items" in the context menu
- Can select a master item and individual fields to merge from other versions
- Word processor integration code will automatically find mapped replacements and update documents with new item keys

Possible future improvements:

- Improved detection algorithms
- UI tweaks
- Currently if any items differ, all available versions will be shown as master item options, even if only one item is different; probably the earliest equivalent item should be shown for each distinct version
- Caching of results for performance
- Confidence scale
- Creator version selection (currently the creators from the chosen master item are kept)
- Merging of matching child items
- Better sorting of duplicates if not clustered together by the selected sort column
- Relation path compression when merging items that are already mapped to previously removed duplicates

Other changes in this commit:

- Don't show Trash in word processor integration windows
- Consider items in trash to be missing in word processor documents
- Selection of special views (Trash, Unfiled, Duplicates) is now restored properly in new windows
- Disabled field transform context menu when item isn't editable
- Left/right arrow now expands/collapses all selected items instead of just the last-selected row
- Relation deletions are now synced
- The same items row is now reselected after item deletion
- (dev) Zotero.Item.getNotes(), Zotero.Item.getAttachments(), and Zotero.Item.getTags() now return empty arrays rather than FALSE if no matches -- tests on those return values in third-party code will need to be changed
- (dev) New function Zotero.Utilities.removeDiacritics(str, lowercaseOnly) -- could be used to generate ASCII BibTeX keys
- (dev) New 'tempTable' search condition can take a table to join against -- useful for implementing virtual source lists
- (dev) Significant UI code cleanup
- (dev) Moved all item pane content into itemPane.xul
- Probably various other things


Needless to say, this needs testing.
2011-07-22 21:24:38 +00:00
Simon Kornblith
c24aad3af4 Add incompatible version message to Firefox 2011-07-20 03:35:21 +00:00
Simon Kornblith
4067a1b820 Fix cookie sandboxing in connector 2011-07-19 03:52:02 +00:00
Simon Kornblith
67c81db102 Fix IPC on Windows by making SendMessage() call return immediately 2011-07-03 03:07:01 +00:00
Simon Kornblith
5710fbc530 Don't initialize Zotero just to figure out if Standalone is running 2011-07-03 00:07:56 +00:00
Simon Kornblith
c40ba095ea Move command line handler to zotero-service.js so that it will have access to zContext even before Zotero is finished initializing. This is necessary for automatic connector switching on Windows. 2011-07-02 22:04:04 +00:00
Simon Kornblith
00fdeb3bf9 Focus window in command line handler 2011-07-02 20:36:44 +00:00
Simon Kornblith
7b41d76b75 Move standalone.xul to separate standalone directory 2011-07-02 04:27:57 +00:00
Simon Kornblith
b114266fb3 - Closes #1832, Connectors should be able to retrieve translator data and code from server in the absence of Zotero Standalone
- Closes #1831, Connectors should be able to save via API in the absence of Zotero Standalone
- Fixes Zotero.Utilities.deepCopy() for arrays
- Fixes some circumstances where an error would not be saved for future error reporting
- Fixes connector status checking
2011-06-30 01:08:30 +00:00
Simon Kornblith
acfd317de9 - Addresses #1828, Ensure any code that uses nsITimer directly maintains a global reference until callback executes
- Adds an optional runWhenWaiting argument to Zotero.setTimeout(), so that code can be set to run even if Zotero.wait() is in progress
2011-06-14 21:26:48 +00:00
Simon Kornblith
8268d1b01c Zotero Everywhere megacommit
- Implement connector for Firefox (should switch in/out of connector mode automatically when Standalone is launched or closed, although this has only been tested extensively on OS X)
- Share core translation code between Zotero and connectors

Still to be done:

- Run translators in non-Fx connectors (this works in theory, but it's not currently enabled for any translators)
- Show translation results in non-Fx connectors
- Ability to translate to server when Zotero Standalone is not running
2011-06-14 00:36:21 +00:00
Simon Kornblith
3f69b8b9c0 Don't allow functions queued with setTimeout() to execute during Zotero.wait()
Fixes fatal error during import
2011-05-31 19:59:07 +00:00
Dan Stillman
51f8c11ea0 Switch client code license to Affero GPL version 3 2011-05-18 18:34:22 +00:00
Dan Stillman
824eb06c73 Add temporary workaround for XML parsing errors on imported notes in generated reports
Still invalid XML, but serve as text/html to avoid error
2011-04-27 21:33:01 +00:00
Simon Kornblith
5951768ada Fix compatibility with latest Minefield 2011-04-18 23:29:12 +00:00
Dan Stillman
ab9ae36135 Fix date-based sorting in reports 2011-04-12 14:47:44 +00:00
Dan Stillman
6b2b08cd1b Group library support for Timeline 2011-03-05 04:28:54 +00:00
Dan Stillman
f94242f7ad Fix Date Published in Timeline 2011-03-05 04:10:29 +00:00
Simon Kornblith
3fd0523b6e - fix preference links
- fix tab mode tooltip
- zotero://fullscreen opens standalone
2011-02-09 06:42:08 +00:00
Simon Kornblith
1486132626 Add flexible locate menu, based on a (very heavily modified) copy of the pubget patch. Documentation is forthcoming. 2011-02-09 03:22:06 +00:00
Simon Kornblith
90b7380563 more tab code changes 2011-02-03 07:17:55 +00:00
Simon Kornblith
ecf0f3397c Zotero as a tab. This may need to be backed out for 2.1 depending on the amount of trouble it generates. 2011-01-30 09:44:01 +00:00
Dan Stillman
1747f19009 Don't load nsDragAndDrop.js 2010-12-26 19:05:52 +00:00
Simon Kornblith
ac9d524a9f update to citeproc-js 1.0.88
From 1.0.82:

Fixes to cs:if and cs:else-if logic.  Was failing to set the match
attribute on singleton nodes, among other things.

Treat greek letters as part of the "romanesque" character set,  for
name formatting purposes.

If cs:number input has numbers separated by spaces, but also
extraneous non-comma, non-ampersand, non-hyphen characters, then
render as literal.

From 1.0.83:

Use en-dash rather than hyphen in formatted page range joins.

From 1.0.84:

Preserve explicit double spaces in HTML output.

From 1.0.85:

Pass full suite of double space suppression tests.

Language switching within a style works, for both localized dates and
terms.  (This functionality is not yet valid in CSL.)

From 1.0.86:

Address bug that caused unreasonable delays with large namesets.

From 1.0.87:

Where et-al-min, et-al-subsequent-min or names-min are set to some
value larger than zero, and the number of names in a nameset exceeds
an arbitrary threshold of 50, truncate author lists that are longer
than the *-min value (plus a buffer value of 2), to raise performance
to a  reasonable level with large namesets.

From 1.0.88:

Adjustments to language condition logic, to use only the base language
name for matching, while applying the full locale specified in the
conditional to node children.

Refinements to the recently introduced handling of brace-enclosed
leading characters as initialized form of names.

Adjustments to print statement arbitration, with a view to playing
nice with various systems.
2010-12-10 07:12:08 +00:00
Simon Kornblith
a1f52aede4 slightly less ugly hack for opening cite preferences 2010-11-07 04:36:39 +00:00