cb2Bib
Science
Score 81%
Description:

The cb2Bib is a tool for rapidly extracting bibliographic references from email alerts, journal web pages, and PDF files. It facilitates the capture of single references from unformatted and non standard sources. Output references are written in BibTeX. Article files can be easily linked and renamed by dragging them onto the cb2Bib window. Additionally, it permits editing and browsing BibTeX files, citing references, searching references and the full contents of the referenced documents, inserting bibliographic metadata to documents, and writing short notes that interrelate several references.
Last changelog:

13 years ago

Document postprocessing and keyword extraction have been improved. A bug that prevented proper indexing when a document conversion was missing has been fixed.

superdino

8 years ago

There are two errors in line 93 of this script.
The original line has this form:

tmp_dir=$(mktemp --tempdir c2b_tools_tmp.XXXXXXXX)

while the corrected line is:

tmp_dir=$(mktemp -d --tmpdir c2b_tools_tmp.XXXXXXXX)



Report

dayuhuangster

8 years ago

Hi,

I am engineering student and I found cb2bib really useful, especially when I used it together with Dropbox which basically put my bibtex accessible and manageable from every where.
One thing I need really badly and I am trying to see if I could contribute is MORE predefined CiteID Pattern. The most popular CiteID Pattern used among my collegues consists of the first three letters of all authors of the paper. The existing CiteID Pattern such as first author last name or all initials of the authors has the problem that many papers end up with the same ID.
The question I would like to ask is whether we could add more predefined CiteID Pattern by ourselves and how?
Thanks.

Report

C

constans

8 years ago

Hi, regarding the question, to set non predefined CiteID patterns, you'll need to modify the class citeIDMaker at src/c2b. You'll need to create a tag, eg, author_all_initials, and then a member function that does the transformation you want, eg, makeCiteID_author_all_initials. This is enough. Once this is done, the tag can be set to c2bConfigure to make other users aware.

That answered, I'd like to note, as you already point out, that's important avoiding repeated entries, as something different from, 'correct latter'. Once an ID went to one/several of your latex writings... it's if not hard to consistently rename. Thus, cb2bib default is 'Last09p13', which includes the page number, and avoids repetition in series of papers like 'Something: Part I', etc, written by the same authors.

I'll be very happy to merge this changes back to the cb2bib if you want to.

Report

dayuhuangster

8 years ago

Thanks for your reply! I use both the KDE version and the Windows version of cb2bib on my laptop and office machines, respectively. Could you please also point out where I can modify it in the Windows version? Thanks!



Best,

Dayu

Report

C

constans

8 years ago

You only need to modify this file. It will go on all platforms.

Report

dayuhuangster

8 years ago

Hi, I've added a new memberfunction to CiteIDMaker that does the job I wanted.

I am a little bit confused when you say "Once this is done, the tag can be set to c2bConfigure to make other users aware."
I edited the c2bCiteIDLineEdit(). Is that what you mean? Thanks a lot.
p.s. I'd be very glad to send you the modified file (CiteIDMaker.cpp/h, c2bCiteIDLineEdit.cpp/h). Where should I send it to?

Best,

Dayu

Report

C

constans

8 years ago

Hi Dayu, I'm glad to hear it's working. On the first post, I pointed to what was strictly necessary to get what you wanted. Then I pointed to c2bConfigure to set there the new functionality, thus to make it visible to users. Sorry! I got confused. You're right. Modification must be in c2bCiteIDLineEdit (so then shows up at the configure dialog, etc). Sorry, my focus was on the first step at that time.

I'll be very happy, too, to include your modifications. You can send them at the email you'll see on the headers of the files.

Best,

Pere

Report

Zibi1981

10 years ago

I can't compile it from source. Here's what I get:

[zibi1981@localhost cb2bib-0.8.4]$ ./configure

Configuration script for cb2Bib (Unix/Linux/MacOSX)

-----------------------------------------------------------------------
Platform: Linux
-----------------------------------------------------------------------
Setting installation directories...
Setting installation relative to dir: /usr
Setting installation executable to dir: /usr/bin
Setting installation cb2Bib data files relative to dir: /usr/share/cb2bib
Setting installation desktop data files to dir: /usr/share/applications
Setting installation icon file to dir: /usr/share/pixmaps
-----------------------------------------------------------------------

-----------------------------------------------------------------------
cb2Bib Info:
-----------------------------------------------------------------------
- This version requires Qt 4.2.0 or later

- Set the environment variable QTDIR before running this script if it
cannot determine the right, Qt 4.2's qmake
- QTDIR will only be used during configuration; it can later be reset
to its original value

- Alternatively, set Qt 4.2 qmake's fullpath name with --qmakepath flag
-----------------------------------------------------------------------

Checking for Qt/qmake:
Using QTDIR environment variable for Qt directory location.
Checking for Qt tools at /usr/lib/qt3/...
Checking for qmake tool... using /usr/lib/qt3//bin/qmake.

Checking for additional tools:
Checking for make... using /usr/bin/gmake
Checking for kfmclient... using /usr/bin/kfmclient
Checking for pdftotext... using /usr/bin/pdftotext

Setting clipboardPoll Enabled (Unix/Linux only)
Running /usr/lib/qt3//bin/qmake -o Makefile

Configuration ended. Type 'make' and 'make install'.
[zibi1981@localhost cb2bib-0.8.4]$ make
cd src && qmake src.pro -o Makefile
WARNING: Found potential symbol conflict of c2bBibPreparser_Log.cpp (c2bBibPreparser_Log.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bBibPreparser_Log.h (c2bBibPreparser_Log.h) in HEADERS
WARNING: Found potential symbol conflict of c2bConfigure.cpp (c2bConfigure.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bConfigure.h (c2bConfigure.h) in HEADERS
WARNING: Found potential symbol conflict of c2bConfigure_FR.cpp (c2bConfigure_FR.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bConfigure_FR.h (c2bConfigure_FR.h) in HEADERS
WARNING: Found potential symbol conflict of c2bEditor.cpp (c2bEditor.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bEditor.h (c2bEditor.h) in HEADERS
WARNING: Found potential symbol conflict of c2bPdfImport.cpp (c2bPdfImport.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bPdfImport.h (c2bPdfImport.h) in HEADERS
WARNING: Found potential symbol conflict of c2bPostprocess.cpp (c2bPostprocess.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bPostprocess.h (c2bPostprocess.h) in HEADERS
WARNING: Found potential symbol conflict of c2bReferenceList.cpp (c2bReferenceList.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bReferenceList.h (c2bReferenceList.h) in HEADERS
WARNING: Found potential symbol conflict of c2bSaveRegExp.cpp (c2bSaveRegExp.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bSaveRegExp.h (c2bSaveRegExp.h) in HEADERS
WARNING: Found potential symbol conflict of cb2Bib.cpp (cb2Bib.cpp) in SOURCES
WARNING: Found potential symbol conflict of cb2Bib.h (cb2Bib.h) in HEADERS
WARNING: Found potential symbol conflict of findDialog.cpp (findDialog.cpp) in SOURCES
WARNING: Found potential symbol conflict of findDialog.h (findDialog.h) in HEADERS
WARNING: Found potential symbol conflict of c2bRL_webSearchSettings.cpp (c2bRL_webSearchSettings.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bRL_webSearchSettings.h (c2bRL_webSearchSettings.h) in HEADERS
WARNING: Found potential symbol conflict of c2bSearchInFiles.cpp (c2bSearchInFiles.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bSearchInFiles.h (c2bSearchInFiles.h) in HEADERS
WARNING: Found potential symbol conflict of c2bSearchInFilesPattern.cpp (c2bSearchInFilesPattern.cpp) in SOURCES
WARNING: Found potential symbol conflict of c2bSearchInFilesPattern.h (c2bSearchInFilesPattern.h) in HEADERS
cd src && make -f Makefile
make[1]: Wejście do katalogu `/home/zibi1981/tmp/cb2bib-0.8.4/src'
Makefile:1049: uwaga: polecenia zakrywające dla obiektu `moc_c2bBibPreparser_Log.cpp'
Makefile:965: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bBibPreparser_Log.cpp'
Makefile:1052: uwaga: polecenia zakrywające dla obiektu `moc_c2bConfigure.cpp'
Makefile:980: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bConfigure.cpp'
Makefile:1055: uwaga: polecenia zakrywające dla obiektu `moc_c2bConfigure_FR.cpp'
Makefile:983: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bConfigure_FR.cpp'
Makefile:1058: uwaga: polecenia zakrywające dla obiektu `moc_c2bEditor.cpp'
Makefile:986: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bEditor.cpp'
Makefile:1061: uwaga: polecenia zakrywające dla obiektu `moc_c2bPdfImport.cpp'
Makefile:995: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bPdfImport.cpp'
Makefile:1064: uwaga: polecenia zakrywające dla obiektu `moc_c2bPostprocess.cpp'
Makefile:998: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bPostprocess.cpp'
Makefile:1067: uwaga: polecenia zakrywające dla obiektu `moc_c2bReferenceList.cpp'
Makefile:1004: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bReferenceList.cpp'
Makefile:1070: uwaga: polecenia zakrywające dla obiektu `moc_c2bSaveRegExp.cpp'
Makefile:1007: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bSaveRegExp.cpp'
Makefile:1073: uwaga: polecenia zakrywające dla obiektu `moc_cb2Bib.cpp'
Makefile:1019: uwaga: ignoruję stare polecenia dla obiektu `moc_cb2Bib.cpp'
Makefile:1076: uwaga: polecenia zakrywające dla obiektu `moc_findDialog.cpp'
Makefile:1025: uwaga: ignoruję stare polecenia dla obiektu `moc_findDialog.cpp'
Makefile:1079: uwaga: polecenia zakrywające dla obiektu `moc_c2bRL_webSearchSettings.cpp'
Makefile:1031: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bRL_webSearchSettings.cpp'
Makefile:1082: uwaga: polecenia zakrywające dla obiektu `moc_c2bSearchInFiles.cpp'
Makefile:1034: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bSearchInFiles.cpp'
Makefile:1085: uwaga: polecenia zakrywające dla obiektu `moc_c2bSearchInFilesPattern.cpp'
Makefile:1040: uwaga: ignoruję stare polecenia dla obiektu `moc_c2bSearchInFilesPattern.cpp'
/usr/lib/qt3//bin/uic c2bSearchInFilesPatternEdit.ui -o c2bSearchInFilesPatternEdit.h
uic: File generated with too recent version of Qt Designer (4.0 vs. 3.3.8)
make[1]: *** [c2bSearchInFilesPatternEdit.h] Błąd 1
make[1]: Opuszczenie katalogu `/home/zibi1981/tmp/cb2bib-0.8.4/src'
make: *** [sub-src] Błąd 2

Any ideas?

P.S. Some words are in Polish (I use Mandriva 2007.1 PL). If someone don't understand what they stand for, just let me know and I'll translate them :-)

Report

C

constans

10 years ago


Hi, the config script is taking Qt3 instead of Qt4. It can help using the flag
--qmakepath to where your qmake (Qt 4.1 or later) is located; or, perhaps typing 'unsetenv QTDIR' before configuring (the former choice is the safest). In either case, delete this directory (files get corrupted for some reason after qmake qt3 had run) and untar again the cb2bib's tarball. :-)
-------------------
Using QTDIR environment variable for Qt directory location.
Checking for Qt tools at /usr/lib/qt3/...
Checking for qmake tool... using /usr/lib/qt3//bin/qmake.

Report

Zibi1981

10 years ago

It seems I got only one version of qmake...

"[zibi1981@localhost cb2bib-0.8.4]$ qmake -v
Qmake version: 1.07a (Qt 3.3.8)
Qmake is free software from Trolltech ASA."

From where to get >=4.2?

Report

C

constans

10 years ago


That's the qmake's version number, which does not follow the library version numbering. On mandriva 2007 your qmake is at /usr/lib/qt4/bin/qmake. You will need the packages:
libqtcore4, libqtgui4, libqtnetwork4, libqt4-devel, libqtuitools4

The defaults for mandriva 2007 are Qt 4.1. Please, make sure to get 4.2 or later from somewhere, perhaps here:
http://club.mandriva.com/xwiki/bin/view/rpms/Package/23/libqt4-devel

Otherwise, cb2bib won't compile (I've tried to provide a binary for this distro. Unfortunately the buildservice has only default packages and I'm having this Qt 4.1/4.2 issue).

Cheers

Report

zivadinko

10 years ago

.rpm package converted to .deb via alien works good on Ubuntu Feisty.

(I spared myself from compiling from the source)

Report

mfg

10 years ago

Does not install.
I have version 0.7.2 working fine.
However, this 0.8.1 version does not install. (nor did 0.7.3).

The output is:
mfg@tepal:~/tepal-sys/downloads/tex/cb2bib-0.8.1$ sudo make install
Password:
cd src && make -f Makefile install
make[1]: Entering directory `/home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/src'
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/AUTHORS /usr/local/share/cb2bib/
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/COPYRIGHT /usr/local/share/cb2bib/
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/LICENSE /usr/local/share/cb2bib/
cp -f -r /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/data /usr/local/share/cb2bib/
cp -f -r /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/c2btools /usr/local/share/cb2bib/
cp -f -r /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/testPDFImport /usr/local/share/cb2bib/
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/src/icons/cb2bib.png /usr/local/share/pixmaps/
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/cb2bib.desktop /usr/local/share/applications/
install -m 644 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/dl_cb2bib.desktop /usr/local/share/applications/
install -m 755 -p "../bin/cb2bib" "/usr/local/bin/cb2bib"
strip "/usr/local/bin/cb2bib"
install -m 755 -p /home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/c2btools/dl_cb2bib /usr/local/bin/
strip /usr/local/bin/dl_cb2bib
strip: /usr/local/bin/dl_cb2bib: File format not recognized
make[1]: [install_script] Error 1 (ignored)
make[1]: Leaving directory `/home/mfg/tepal-sys/downloads/tex/cb2bib-0.8.1/src'
mfg@tepal:~/tepal-sys/downloads/tex/cb2bib-0.8.1$

Report

C

constans

10 years ago

Thank you for let me know, this message didn't catch my attention. The command 'make install' doesn't return any error code, which is what my packaging script checks. In any case, and in spite of this message, installation goes well (all files are properly copied).

On version 0.7.2 it was introduced the 'download to reference manager' functionality. For convenience, the shell script dl_cb2bib was included. This was done to avoid conflicts with the config file cb2bib.desktop on KDE, which opens *.bib files.

When installing, make does 'strip dl_cb2bib', and hence we get 'File format not recognized. Error 1 (ignored)'. This seems to be *normal* for shell scripts. I'm a bit puzzled regarding when this started. Version 0.7.2 already had dl_cb2bib. Make files are done by qmake. Qt requirements hasn't changed since then, though this could come from newer Qt versions.

I'll try to figure out how to avoid this message. For the moment, just ignore it. Installation should be fine. Let me know if it's not.

Report

mfg

10 years ago

Dear Constans,
I was puzzled with your reply but now I sort of understand, at least one part.

cb2bib version 0.7.2 remains installed in the path /usr/bin/cb2bib

However, cb2bib version 0.8.1 does install in the path /usr/local/bin/cb2bib

For this reason when I invoked it from the kde menu it gave me version 0.7.2 and I thought the newer version was not installed.

yours,

Report

C

constans

10 years ago

Manuel, thank you for your replay.

The default path changed to /usr/bin some time ago. I checked this now (I did a cleanup in the settings stuff in 0.8.1 and some bug could be there) and, by default, it should still be pointing to /usr/bin ...

Regarding the error message, I just learned that qmake does strip all executable files when writing the Makefile. I saw a post at the Qt mailing list, though it wasn't there any workaround to deal with attached scripts.

Anyway, hope now works smmooth :-)


Cheers,

Pere

Report

arnehe

10 years ago

It would be great, if you could provide binary packages for some common distributions, e.g. using the openSUSE build service (http://en.opensuse.org/Build_Service).

Thanks,
Arne

Report

C

constans

10 years ago

Arne, I wasn't aware of this service. I looked at it and it seems a pretty good way to get the binaries for several distros/versions. I'll try to get an account there, and hopefully, next releases will have several binaries to chose from. Thanks.

Report

arnehe

10 years ago

Great! Thanks, Arne.

Report

C

constans

10 years ago

Arne, thank you for let me know about the openSUSE build service. I got packages for SuSE and RedHat. Ubuntu and Debian will need to wait. There is the issue of (the lack of) Qt4 on the default packages available. As far as I read, updated, non SuSE distros will be available soon.

So thanks, and also thanks to the comunity behind openSUSE build service that gave me the permission to use their resources.

Report

surion

10 years ago

Oh, how horrible it depends on qt4. I need it desperately :)

Report

schek

11 years ago

/usr/lib/qt/bin/uic c2bConfigure.ui -o c2bConfigure.h
uic: File generated with too recent version of Qt Designer (4.0 vs. 3.3.4)
make[1]: *** [c2bConfigure.h] Error 1
make[1]: Leaving directory `/home/nesanfor/cb2bib-0.6.91/src'
make: *** [sub-src] Error 2

It seems that it doesn't support the newer version

Report

paulatz

11 years ago

First I wish to thank you for your great software, it is definetly faster than writing bib at hand.

First of I have added this lines to my abbreviations:

PR|Phys. Rev.|Physical Review
PR|Phys. Rev. Lett.|Physical Review Letters
PR|Phys. Rev. A|Physical Review A
PR|Phys. Rev. B|Physical Review B

Second: network search does not work, or maybe I can't understand how it is supposed to work.

If I insert thew minimum information and than click on network lookup the status bar will show that it's lookin for info on www.ncbi.nlm.nih.gov and crossref.org and than stop: nothing happens.

I'll suppose the retrieved html to be copied in the cb2bib window, even if it cannot be autoparsed.

Furthermore, I'll setup my own bookmark file if I could figure out how it works (as www.ncbi.nlm.nih.gov definetly is *not* the right place for physics articles)

Last: clipboard connection could be tuned non to autopaste "internal" selections (e.g. I click on the "year" field it's autoselected, autopasted, autoparsed and messes up all the other fields). This is a minor problem, but it would be nice.

Bye and thanks.

Report

C

constans

11 years ago

1) Try typing prl at the journal box, press enter; you'll get Phys. Rev. Lett. written for you. Also, type praamop, to get Phys. Rev. A: At. Mol. Opt. Phys. So your journals are there... Should you prefer an incomplete abbreviation, feel free to modify the abbreviation file accordingly.

2) Network stuff might be tricked when retrieving of files is complicated by redirections or cookies. I'd suggest you to use kfmclient in these cases. See config panel. Make sure you don't have temporary files left in your home dir. This files are left there if so requested, to help you to write and debug your personalized netqinf file. Just at random, I tried prl, intro, set pages=1 and volume=10, and click net button. My browser show up with this page: http://prola.aps.org/abstract/PRL/v10/i1/p1_1 cb2Bib 0.6.0 includes a contributed regexp for PROLA. I could now easily extract the reference, and attach the pdf file to it, just dragging and dropping to cb2Bib. Feel free to modify and improve this regexps if you wish. NCBI is good for JCP and others. Crossref will work for many more, provided they have a DOI.

3) Go through the examples given at the netqinfo file. Try to understand them. Its syntax is pretty simple. It was designed having in mind that there is not definite database for scientific references. Insted, there is a huge number of different sites but just usefull for a very limitted number of journals. cb2Bib goals are to provide a frame or infrastructure to overcome this. I'd suggest to put sometime of yourself on it. I'm pretty sure it will pay off.

4) Just click connect/disconnect button if you need internal copying. cb2Bib is designed to minimize the number of steps needed for extracting a reference. In most of the cases this means to have it aware of clipboard changes.

Report

gohanz

11 years ago

A SlackWare TGz package with SlackBuild Script is Ready to DownLoad!!!

http://www.slacky.it/

http://www.slacky.it/index.php?option=com_remository&Itemid=1&func=fileinfo&filecatid=851&parent=category

Report

13 years ago

Document postprocessing and keyword extraction have been improved. A bug that prevented proper indexing when a document conversion was missing has been fixed.

product-maker MichauSm Jan 25 2011

product-maker 38 181

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
1.5.0
updated Dec 22 2014
added Jul 06 2004
downloads today
0
page views today 8