On Mon, May 15, 2000 at 04:33:31PM +0100, Angus Leeming wrote:
>
> I've moved the info browser underneath the other two, and immediately above the
> "Text After" box. If the bibliography database is empty, then this info is not
> drawn at all and the dialog is resized accordingly.
I think that this makes the browser too tall (it will not fit in low
resolution displays).
> As I see it, this info browser needs a little work only, to improve the parsing
> of the bibliography data base. Ie, insetbib::getKeys() needs modifying. At the
> moment a database containing:
>
> I'd suggest modifying the parser to strip off this rubbish from the tail. I
> don't think we need make it intelligent and recognise the different fields, but
> we might also get it to replace any strings with the expanded version. In this
> case:
I'm not sure that @string expansion is a feature that worth the effort of
coding it (I listed more important features (IMHO) below).
Since InsetBibtex::getKeys() operates on the entire bibliography database,
which can be quite large, it might be better to do there as little work as
possible, and do the parsing in InsetCitation::Edit().
For example, instead of returning vector<string,string> from insetbib::getKeys(),
where the first element in a pair is a key, and the second is the
concatenation of the lines in the entry
strings, return vector<string,vector<string>>, where the second element of
the pair is a vector of the lines.
> If you are busy implementing some of this, fine. If not, I'll have a go. Let's
> not both do it though (so just drop me a line...)
No, I'm not working on this currently.
>
> Any other suggestions?
- Below the browser line, add a text input form, and a button labeled search.
When pressing the button, a key that its bibliography entry contains that
string is searched for, and if such a key is found it will be selected in the
bibliography keys browser (if there is already a selected key in this
browser, the search will start from the next key).
Use exsisting code for doing the search (e.g. contains() in support/lstrings.C)
- Add a toggle button named "sort" below the bibliography keys browser,
that allows you to watch the keys in sorted order/original order.
- Move up/down buttons for reordering the keys in the inset-keys browser.
- Discard "static vector<string> bibkeys;" . This requires deleting the
InsetCitation::Update() method, and also adding a functor for using with
std::find.