hs-bibutils 6.8.0.0 → 6.10.0.0
raw patch · 70 files changed
+8028/−6828 lines, 70 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- ChangeLog.md +5/−0
- bibutils/adsout.c +4/−5
- bibutils/adsout_journals.c +4429/−4505
- bibutils/bibcore.c +258/−302
- bibutils/bibdefs.h +17/−0
- bibutils/bibformats.h +21/−20
- bibutils/bibl.c +72/−52
- bibutils/bibl.h +8/−7
- bibutils/biblatexin.c +56/−221
- bibutils/biblatexout.c +890/−0
- bibutils/bibtexin.c +204/−312
- bibutils/bibtexout.c +27/−27
- bibutils/bibtextypes.c +129/−43
- bibutils/bibutils.c +10/−9
- bibutils/bibutils.h +4/−7
- bibutils/bltypes.c +2/−2
- bibutils/bu_auth.c +1/−1
- bibutils/charsets.c +1/−1
- bibutils/copacin.c +43/−22
- bibutils/copactypes.c +1/−1
- bibutils/ebiin.c +38/−29
- bibutils/endin.c +46/−22
- bibutils/endout.c +2/−2
- bibutils/endtypes.c +1/−1
- bibutils/endxmlin.c +68/−56
- bibutils/entities.c +1/−1
- bibutils/fields.c +237/−148
- bibutils/fields.h +19/−16
- bibutils/generic.c +2/−2
- bibutils/intlist.c +1/−1
- bibutils/is_ws.c +1/−1
- bibutils/isiin.c +43/−22
- bibutils/isiout.c +28/−27
- bibutils/isitypes.c +1/−1
- bibutils/latex.c +423/−449
- bibutils/latex_parse.c +374/−0
- bibutils/latex_parse.h +13/−0
- bibutils/marc_auth.c +291/−286
- bibutils/marc_auth.h +6/−4
- bibutils/medin.c +33/−18
- bibutils/modsin.c +51/−28
- bibutils/modsout.c +6/−6
- bibutils/modstypes.c +1/−1
- bibutils/name.c +10/−8
- bibutils/name.h +5/−1
- bibutils/nbibin.c +1/−1
- bibutils/nbibout.c +1/−1
- bibutils/nbibtypes.c +1/−1
- bibutils/notes.c +1/−1
- bibutils/pages.c +1/−1
- bibutils/reftypes.c +1/−1
- bibutils/risin.c +3/−3
- bibutils/risout.c +3/−25
- bibutils/ristypes.c +1/−1
- bibutils/serialno.c +1/−1
- bibutils/slist.c +1/−1
- bibutils/str.c +1/−1
- bibutils/str_conv.c +1/−1
- bibutils/strsearch.c +1/−1
- bibutils/title.c +1/−1
- bibutils/type.c +1/−1
- bibutils/url.c +6/−4
- bibutils/utf8.c +1/−1
- bibutils/vplist.c +1/−1
- bibutils/wordin.c +1/−1
- bibutils/wordout.c +58/−56
- bibutils/xml.c +1/−1
- bibutils/xml_encoding.c +1/−1
- hs-bibutils.cabal +51/−49
- src/Text/Bibutils.hsc +5/−5
ChangeLog.md view
@@ -1,3 +1,8 @@+# 6.10.0.0++ - Import Bibutils 6.10++ # 6.8.0.0 - Import Bibutils 6.8
bibutils/adsout.c view
@@ -1,8 +1,8 @@ /* * adsout.c *- * Copyright (c) Richard Mathar 2007-2019- * Copyright (c) Chris Putnam 2007-2019+ * Copyright (c) Richard Mathar 2007-2020+ * Copyright (c) Chris Putnam 2007-2020 * * Program and source code released under the GPL version 2 *@@ -174,8 +174,7 @@ str_strcat( &fulltitle, vol ); } - iss = fields_findv_firstof( in, LEVEL_ANY, FIELDS_STRP, "ISSUE",- "NUMBER", NULL );+ iss = fields_findv_firstof( in, LEVEL_ANY, FIELDS_STRP, "ISSUE", "NUMBER", NULL ); if ( str_has_value( iss ) ) { str_strcatc( &fulltitle, ", no. " ); str_strcat( &fulltitle, iss );@@ -632,7 +631,7 @@ { int type, status = BIBL_OK; - fields_clearused( in );+ fields_clear_used( in ); type = get_type( in ); append_Rtag ( in, "%R", type, out, &status );
bibutils/adsout_journals.c view
@@ -1,4510 +1,4434 @@ /* http://adsabs.harvard.edu/abs_doc/journals1.html * download URL source then parse with * fgrep setfields journals1.html | awk -F ';' '{printf "%s\n",$2}'- * | cut -c 7-12,24- | sed 's/"//g' | awk '{printf "\"%s\",\n",$0}'- * | sort -k 2- *- */-static const char *journals[] = {-"TDR.. 3D Research",-"AASHS AAS Hist. Ser.",-"AASPB AAS Photo Bulletin",-"AAN.. AAVSO Alert Notice",-"AAVSC AAVSO Circular",-"AAVSN AAVSO Newsletter",-"AAVSB AAVSO Solar Bulletin",-"AbaOB Abastumanskaia Astrofizicheskaia Observatoriia Byulleten",-"AbbOO Abbadia Observatory Observations",-"AADDR Abhandlungen Akad. Wiss. DDR",-"AAGot Abhandlungen Akad. Wiss. Göttingen",-"ABWG. Abh. Braunschweigische Wissenschaftliche Ges.",-"AbhP. Abh. der Preuß. Akademie der Wissenschaften Jahrg",-"AbhKP Abh. Konigl. Preuss. Akad. Wissenschaften Jahre 1906,92, Berlin,1907",-"AbhBr Abh. naturwiss. Verein Bremen",-"AbApA Abstract and Applied Analysis",-"ASFAS Academia Scientiarum Fennica Annales Series Physica",-"AOIJ. Academic Open Internet Journal",-"CR2.. Academie des Sciences Comptes Rendus Serie Mecanique Physique Chimie Sciences de la Terre et de l Univers",-"CRAS. Academie des Sciences Paris Comptes Rendus",-"CRASB Academie des Sciences Paris Comptes Rendus Serie B Sciences Physiques",-"CRASG Academie des Sciences Paris Comptes Rendus Serie Generale La Vie des Sciences",-"CRASP Academie des Sciences Paris Comptes Rendus Serie Physique Astrophysique",-"CRASM Academie des Sciences Paris Comptes Rendus Serie Sciences Mathematiques",-"CRASA Academie des Sciences Paris Comptes Rendus Vie Academique Semester Supplement",-"MeARB Academie Royale de Belgique Classe des Sciences Memoires",-"ASSAB Academie Serbe des Sciences et des Arts Bulletin Classe des Sciences Techniques",-"ASLLR Accademia di Scienze e Lettere Istituto Lombardo Rendiconti Serie della Classe di Scienze Matematiche e Naturali Sezione Scienze Matematiche Fisiche Chimiche e Geologiche",-"ANLAM Accademia Nazionale dei Lincei Atti Rendiconti Classe di Matematica e Applicazioni",-"ANLAF Accademia Nazionale dei Lincei Atti Rendiconti Classe di Scienze Fisiche e Naturali",-"ANLAR Accademia Nazionale dei Lincei Atti Rendiconti Classe di Scienze Fisiche Matematiche e Naturali",-"AcChR Accounts Chem. Res.",-"AcBu. Acoust. Bull.",-"AIH.. Acoustical Imaging and Holography",-"APhy. Acoustical Physics",-"ASAJ. Acoustical Society of America Journal",-"AcouL Acoustics Letters",-"AcAcu Acta Acustica",-"AcAer Acta Aerodynamica Sinica",-"AcAAS Acta Aeronautica et Astronautica Sinica",-"AcAM. Acta Applicandae Mathematicae",-"AcAri Acta Arithmetica",-"AcArm Acta Armamentarii",-"AcAau Acta Astronautica",-"AcA.. Acta Astronomica",-"AcASn Acta Astronomica Sinica",-"AcAS. Acta Astronomica Supplementa",-"AcApS Acta Astrophysica Sinica",-"AcAuS Acta Automatica Sinica",-"AcBAS Acta Biochimica and Biophysica Academiae Scientarium Hungarica",-"AcBBH Acta Biochimica et Biophysica Hungarica",-"AcBBS Acta Biochimica et Biophysica Sinica",-"AcBio Acta Biotheoretica",-"AcCS. Acta Chemica Scandinavica Series A",-"ACIP. Acta Cienc. Indica Phys.",-"AcC.. Acta Cosmologica",-"AcCrA Acta Crystallographica Section A",-"AcCrB Acta Crystallographica Section B",-"AcCrC Acta Crystallographica Section C",-"AcCrD Acta Crystallographica Section D",-"AcElc Acta Electrochimica",-"AcEle Acta Electronica",-"AcElS Acta Electronica Sinica",-"AcESn Acta Electron. Sinica",-"AcFre Acta Frequenza",-"AcGG. Acta Geod. Geophys.",-"AcGeo Acta Geophysica",-"AcGeP Acta Geophysica Polonica",-"AcGSn Acta Geophys. Sinica",-"AcHA. Acta Historica Astronomiae",-"AcMCS Acta Materiae Compositae Sinica",-"AcMat Acta Materialia",-"AcMa. Acta Mathematica",-"AcMaH Acta Mathematica Hungarica",-"AcMaS Acta Mathematica Sinica",-"AcMSw Acta Mathematica Sweden",-"AcMec Acta Mechanica",-"AcMSn Acta Mechanica Sinica",-"AcMSS Acta Mechanica Solida Sinica",-"AcMet Acta Metallurgica",-"AcMMS Acta Metallurgica et Materialia Supplement",-"AcMeS Acta Meteorologica Sinica",-"AcNum Acta Numerica",-"AcOSi Acta Oceanica Sinica",-"AcOdS Acta Odontologica Scandinavica",-"AcO.. Acta Oecologica",-"AcOpS Acta Optica Sinica",-"AcOrS Acta Orthopaedica Scandinavica",-"AcPSi Acta Photonica Sinica",-"AcPhy Acta Physica",-"APASH Acta Physica Academiae Scientiarum Hungaricae",-"AcPhA Acta Physica Austriaca",-"AcPAS Acta Physica Austriaca Supplement",-"AcPhC Acta Physica et Chemica",-"AcPhH Acta Physica Hungarica",-"APHHI Acta Physica Hungarica Heavy Ion Physics",-"APHQE Acta Physica Hungarica Quantum Electronics",-"AcPP. Acta Physica Polonica",-"AcPPA Acta Physica Polonica A",-"AcPPB Acta Physica Polonica B",-"AcPSn Acta Physica Sinica",-"AcPSl Acta Physica Slovaca",-"AcPhS Acta Physiologica Scandinavica",-"AcPol Acta Polytechnica",-"AcPSc Acta Polytechnica Scandinavica Applied Physics Series",-"AcPSP Acta Polytechnica Scandinavica Physics",-"AcSSn Acta Seismologica Sinica",-"ASSF. Acta Societatis Scientarum Fennicae",-"ASSFA Acta Societatis Scientarum Fennicae Series A",-"AcTec Acta Technica",-"AcUni Acta Universitaria",-"AcMPh Acta Universitatis Caroliae. Mathematica et Physica",-"AcMPS Acta Universitatis Caroliae. Mathematica et Physica Supplement",-"APEC. Active and Passive Electronic Components",-"Acu.. Acustica",-"AdBeh Adaptive Behaviour",-"AdAs. Ad Astra",-"ARPM. Adgeziia Rasplavov i Paika Materialov",-"Adsor Adsorption",-"AdCM. Advanced Ceramic Materials",-"AdCoL Advanced Composites Letters",-"AMP.. Advanced Materials and Processes",-"APM.. Advanced Performance Materials",-"ASL.. Advanced Science Letters",-"AdSAC Advanced Series in Astrophysics and Cosmology",-"AdSMP Advanced Series in Mathematical Physics",-"ASDHE Advanced Series on Directions in High Energy Physics",-"AdTPh Advanced Texts in Physics",-"AdAeS Advances in Aeronautical Sciences",-"AdApM Advances in Applied Mathematics",-"AdAst Advances in Astronomy",-"AASP. Advances in Astronomy and Space Physics",-"AdAtS Advances in Atmospheric Sciences",-"AdAMP Advances in Atomic and Molecular Physics",-"AAMOP Advances in Atomic Molecular and Optical Physics",-"AdBMP Advances in Biological and Medical Physics",-"AdBio Advances in Biophysics",-"AdCP. Advances in Cardiovascular Physics",-"AdChP Advances in Chemical Physics",-"AdCIS Advances in Colloid and Interface Science",-"AdCoM Advances in Computational Mathematics",-"AdCMP Advances in Condensed Matter Physics",-"AdEPS Advances in Earth and Planetary Sciences",-"AdEOA Advances in Earth Oriented Applications and Space Technology",-"AEEP. Advances in Electronics and Electron Physics",-"AEEPS Advances in Electronics and Electron Physics Supplement",-"AdExG Advances in Exploration Geophysics",-"AdGDP Advances in Geophysical Data Processing",-"AdGR. Advances in Geophysical Research",-"AdGeo Advances in Geophysics",-"AdGeS Advances in Geophysics Supplement",-"AdG.. Advances in Geosciences",-"AdHEP Advances in High Energy Physics",-"ADIEP Advances in Imaging and Electron Physics",-"AdMRe Advances in Magnetic Resonance",-"AdMPC Advances in Materials Physics and Chemistry",-"AdMS. Advances in Materials Science",-"AdMSE Advances in Materials Science and Engineering",-"AdMaP Advances in Mathematical Physics",-"AdMat Advances in Mathematics",-"AdMPS Advances in Mechanics and Physics of Surfaces",-"AdMUM Advances in Mechanics Uspekhi Mekhaniki",-"AdMet Advances in Meteorology",-"AdNOp Advances in Nonlinear Optics",-"AdNuP Advances in Nuclear Physics",-"AdPhG Advances in Physical Geochemistry",-"AdPhy Advances in Physics",-"AdPlP Advances in Plasma Physics",-"AdPPR Advances in Plasma Physics Research",-"AdPoS Advances in Polymer Science",-"AdQC. Advances in Quantum Chemistry",-"AdRS. Advances in Radio Science",-"AdSR. Advances in Science and Research",-"AdSSP Advances in Solid State Physics",-"AdSpR Advances in Space Research",-"AdAnS Advances in the Astronautical Sciences",-"AdTAM Advances in Theoretical and Applied Mechanics",-"AdTMP Advances in Theoretical and Mathematical Physics",-"AdThP Advances in Theoretical Physics",-"AdWR. Advances in Water Resources",-"AAMS. Adv. Appl. Mech. Suppl.",-"ATTM. AEG Telefunken Technische Mitteilungen",-"AeoRe Aeolian Research",-"Aekv. Aerodinamika kanalov i ventiliatorov",-"AeRaG Aerodinamika Razrezhennykh Gazov",-"AerTe Aerojet Technology",-"AeIBu Aerokosmicheski Izsledvaniia B lgariia",-"AeJ.. Aeronautical Journal",-"AeQ.. Aeronautical Quarterly",-"AeSIJ Aeronautical Society India Journal",-"AerST Aerosol Science Technology",-"AeAm. Aerospace America",-"AeCh. Aerospace China",-"AeCM. Aerospace Composites and Materials",-"AeDy. Aerospace Dynamics",-"AeEn. Aerospace Engineering",-"AeMat Aerospace Materials",-"AeMed Aerospace Medicine",-"ARBl. Aerospace Research in Bulgaria",-"AeTJa Aerospace Technology Japan",-"Aero. Aerospace UK",-"AFGL. AFGL-TR-0208 Environemental Research papers",-"AfrSk African Skies",-"AGUFM AGU Fall Meeting Abstracts",-"AGUSM AGU Spring Meeting Abstracts",-"AIAAJ AIAA Journal",-"AIASJ AIAA Student Journal",-"AIChE AIChE Journal",-"EDAM. AI EDAM",-"AIHAJ AIHA Journal",-"AIPA. AIP Advances",-"AirSp Air and Space",-"AirE. Aircraft Engineering",-"AirCo Air et Cosmos",-"AFMa. Air Force Magazine",-"AiInt Air International",-"APCAJ Air Pollution Control Association Journal",-"AkAtP Akademia Athenon Praktika",-"DoArm Akademiia Nauk Armianskoi SSR Doklady",-"DoAze Akademiia Nauk Azerbaidzhanskoi SSR Doklady",-"IzAze Akademiia Nauk Azerbaidzhanskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh i Matematicheskikh Nauk",-"IFBel Akademiia Nauk Belorusskoi SSR Institut Fiziki Nauchnaia Sessiia Minsk Belorussian SSR Zhurnal Prikladnoi Spektroskopii",-"DoBel Akademiia Nauk BSSR Doklady",-"SoGru Akademiia Nauk Gruzii Soobshcheniia",-"VeKaz Akademiia Nauk Kazakhskoi SSR Vestnik",-"IzLat Akademiia Nauk Latviiskoi SSR Izvestiia Seriia Fizicheskikh i Tekhnicheskikh Nauk",-"IzMol Akademiia Nauk Moldavskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh i Matematicheskikh Nauk",-"DoSSR Akademiia Nauk SSSR Doklady",-"FizAO Akademiia Nauk SSSR Fizika Atmosfery i Okeana",-"InSSR Akademiia Nauk SSSR Investiia Mekhanika Zhidkosti i Gaza",-"IzFZ. Akademiia Nauk SSSR, Izvestiia, Fizika Zemli",-"IzSSR Akademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",-"MeSSR Akademiia Nauk SSSR Mekhanika Zhidkosti i Gaza",-"FiMos Akademiia Nauk SSSR Otdelenie Obshchei Fiziki i Astronomii Nauchnaia Sessiia Moscow USSR Uspekhi Fizicheskikh Nauk",-"IzSib Akademiia Nauk SSSR Sibirskoe Otdelenie Izvestiia",-"SiSSR Akademiia Nauk SSSR Sibirskoe Otdelenie Izvestiia Seriia Tekhnicheskie Nauki",-"KzSib Akademiia Nauk SSSR Sibirskoi Otdelenie Izvestiia Seriia Tekhnicheskikh Nauk",-"VeSSR Akademiia Nauk SSSR Vestnik",-"DoTad Akademiia Nauk Tadzhikskoi SSR Doklady",-"FiSSR Akademiia Nauk Tadzhikskoi SSR Fiziko Tekhnicheskii Institut Dyushambe Tadzhik SSR Akademiia Nauk Tadzhikskoi SSR Doklady",-"ABTad Akademiia Nauk Tadzhikskoi SSR Institut Astrofiziki Biulleten",-"IzTur Akademiia Nauk Turkmenskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh Khimicheskikh i Geologicheskikh Nauk",-"IzUkr Akademiia Nauk Ukrainian SSSR Izvestiia Seriia Fizicheskaia",-"PrUkr Akademiia Nauk Ukrains koi RSR Dopovidi Matematika Prirodoznavstvo Tekhnichni Nauki",-"FiUkr Akademiia Nauk Ukrain skoi RSR Dopovidi Seriia Fiziko Matematichni ta Tekhnichni Nauki",-"DoUkr Akademiia Nauk Ukrains koi RSR Dopovidi Seriia Fiziko Matematichni ta Tekhnichni Nauki",-"ViUkr Akademiia Nauk Ukrains koi RSR Visnik",-"MGUkr Akademiia Nauk Ukrainskoi SSR Morskie Gidrofizicheskie Issledovaniia",-"DoUzb Akademiia Nauk Uzbekskoi SSR Doklady",-"IzUzb Akademiia Nauk Uzbekskoi SSR Izvestiia Seriia Fiziko Matematicheskikh Nauk",-"VeNav Akademiia Navuk BSSR Vestsi Seryia Fizika Tekhnichnykh Navuk",-"AkZh. Akusticheskii Zhurnal",-"AkTek Akustika i Ul trazvukovaia Tekhnika",-"AAIzN Alma Ata Izdatel Nauka",-"ALMAN ALMA Newsletter",-"AlFr. Alta Frequenza",-"AFRE. Alta Frequenza Rivista di Elettronica",-"Ambio Ambio",-"AVSOA American Association of Variable Stars Observers Abstracts",-"AVSOM American Association of Variable Stars Observers Monographs",-"AVSOQ American Association of Variable Stars Observers Quarterly Reports",-"AVSOR American Association of Variable Stars Observers Reports",-"ACSB. American Ceramic Society Bulletin",-"ACSC. American Ceramic Society Communications",-"ACSJ. American Ceramic Society Journal",-"AHSJ. American Helicopter Society Journal",-"AmJC. American Journal of Cardiology",-"AmJM. American Journal of Mathematics",-"AmJPh American Journal of Physics",-"AmJS. American Journal of Science",-"AmJSA American Journal of Science and Arts",-"AMSBu American Meteorological Society Bulletin",-"AmMin American Mineralogist",-"AmSci American Scientist",-"ASME. American Society of Mechanical Engineers",-"AnCoi Anais do Observatorio Astronomico da Universidade de Coimbra",-"AnFis Anales de Fisica",-"AICSP Analog Integrated Circuits and Signal Processing",-"AnMP. Analysis and Mathematical Physics",-"AnBio Analytical Biochemistry",-"AnaCh Analytical Chemistry",-"AnaIn Analytical Instrumentation",-"BSSR. AN BSSR Institut Teplo i Massoobmena Vsesoiuznaia Konferentsiia Teplomassoobmenu Minsk Belorussian SSR Preprint",-"AAONw Anglo-Australian Observatory Epping Newsletter",-"AAOPr Anglo-Australian Observatory Epping Preprint",-"ARIJ. An Interdisciplinary Journal of Physical and Engineering Sciences",-"CSMPA Ankara Universite Faculte des Sciences Communications Serie Mathematiques Physique et Astronomie",-"AASF. Ann. Acad. Sci. Fennicae",-"AnStr Annalen der Kaiserlichen Universitats-Sternwarte in Strassburg",-"AnWie Annalen der K.K. Sternwarte Wien",-"AnSWi Annalen der K.K. Universitaets-Sternwarte in Wien (Waehring)",-"AnMun Annalen der Koeniglichen Sternwarte bei Muenchen",-"AnP.. Annalen der Physik",-"AnWiD Annalen der Universitaets-Sternwarte Wien, Dritter Folge",-"AnMet Annalen Meteorologie",-"AnLei Annalen van de Sterrewacht te Leiden",-"AnAp. Annales d'Astrophysique",-"AnCPh Annales de Chimie et de Physique",-"AnG.. Annales de Geophysique",-"AFLB. Annales de la Fondation Louis de Broglie",-"ASSB. Annales de la Societe Scietifique de Bruxelles",-"AnIHP Annales de L'Institut Henri Poincare Section Physique Theorique",-"AnTou Annales de l'Observatoire Astron. et Meteo. de Toulouse",-"AnAIK Annales de l'Observatoire astronomique de l'Université imériale de Kharkow",-"AOTok Annales de l'Observatoire astronomique de Tokyo",-"AnZoC Annales de l'Observatoire astronomique de Zô-sè (Chine)",-"AnAPM Annales de l'Observatoire d'astronomie physique de Paris, Section d'astrophysique, à Meudon",-"AnBes Annales de l'Observatoire de Besancon",-"AnBor Annales de l'Observatoire de Bordeaux",-"AnNic Annales de l'Observatoire de Nice",-"AnPar Annales de l'Observatoire de Paris",-"AnPOb Annales de l'Observatoire de Paris. Observations",-"AnOSt Annales de l'Observatoire de Strasbourg",-"AnRio Annales de l'Observatoire Imperial de Rio de Janeiro",-"AnAth Annales de l'Observatoire national d'Athènes",-"AnOB. Annales de l'Observatoire Royal de Belgique",-"AnOBN Annales de l'Observatoire Royal de Belgique Nouvelle serie",-"AnBru Annales de l'Observatoire Royal de Bruxelles",-"AnPh. Annales de Physique",-"AnPBM Annales de Physique Biologique et Medicale",-"AnPCS Annales de Physique Colloque Supplement",-"AnTel Annales des Telecommunications",-"AnGVP Annales du Bureau des Longitudes, Gauthier-Villars, Paris",-"AFChr Annales Francaises de Chronometrie",-"AnGeo Annales Geophysicae",-"AnGeA Annales Geophysicae Series A Upper Atmosphere and Space Sciences",-"AnGeB Annales Geophysicae Series B Terrestrial and Planetary Physics",-"AnHP. Annales Henri Poincaré",-"AnTec Annales Tectonicae",-"AUGGM Annales UMCS, Geographia, Geologia, Mineralogia et Petrographia",-"AUSPh Annales UMCS, Sectio AAA: PHYSICA",-"AnApS Annals of Applied Statistics",-"AGp.. Annals of Geophysics",-"AnGla Annals of Glaciology",-"AnGAG Annals of Global Analysis Geometry",-"AnHar Annals of Harvard College Observatory",-"AnMat Annals of Mathematics",-"AnMAI Annals of Mathematics and Artificial Intelligence",-"AnOR. Annals of Operations Research",-"AnPhy Annals of Physics",-"AnREE Annals of Research on Engineering Education",-"AnCGH Annals of Royal Observatory, Cape of Good Hope",-"AnSci Annals of Science",-"AnSta Annals of Statistics",-"AnSAO Annals of the Astrophysical Observatory of the Smithsonian Institution",-"AnBos Annals of the Bosscha Observatory Lembang (Java) Indonesia",-"AnCap Annals of the Cape Observatory",-"AnDea Annals of the Dearborn Observatory",-"AnDud Annals of the Dudley Observatory",-"AnISM Annals of the Institute of Statistical Mathematics",-"AIQSY Annals of the IQSY",-"AnIPS Annals of the Israel Physical Society",-"AnLow Annals of the Lowell Observatory",-"NYASA Annals of the New York Academy of Sciences",-"AnLL. Annals of the Observatory of Lucien Libert",-"AnLun Annals of the Observatory of Lund",-"AnLuS Annals of the Observatory of Lund Supplement",-"AnOLL Annals of the Private Observatory of Lucien Libert",-"AnEdi Annals of the Royal Observatory, Edinburgh",-"AnSPC Annals of the Solar Physics Observatory Cambridge England",-"AnTok Annals of the Tokyo Astronomical Observatory",-"AnUCP Annals of the University of Craiova Physics AUC",-"AnRev Ann Rev",-"AnBSJ Annual Bulletin of the Societe Jersiaise",-"YalAR Annual Report of the Astronomer of the Winchester Observatory of Yale College",-"ARKod Annual Report of the Kodaikanal Observatory",-"MMAAR Annual Report of the Maria Mitchell Association",-"ARAOJ Annual Report of the National Astronomical Observatory of Japan",-"AnRSI Annual Report of the Smithsonian Institution",-"WinAR Annual Report of the Windsor Observatory, New South Wales",-"ARAC. Annual Review of Analytical Chemistry",-"ARCMP Annual Review of Condensed Matter Physics",-"AREPS Annual Review of Earth and Planetary Sciences",-"AnRE. Annual Review of Energy",-"AnRFM Annual Review of Fluid Mechanics",-"ARIST Annual Review of Information Science and Technology",-"ARMS. Annual Review of Marine Science",-"AnRMS Annual Review of Materials Science",-"ARNPS Annual Review of Nuclear and Particle Science",-"ARPC. Annual Review of Physical Chemistry",-"ARCP. Annual Reviews of Computational Physics",-"AnMN. Antarctic Meteorite Newsletter",-"AMR.. Antarctic Meteorite Research",-"Antk. Antarktika",-"Anten Antenny",-"AnCan Anticancer Research",-"IORA. Anuario publicado pelo Imperial Observatorio do Rio de Janeiro",-"IORAS Anuario publicado pelo Imperial Observatorio do Rio de Janeiro Suplemento",-"ApAN. Apatity Akademiia Nauk SSSR",-"ApKF. Apatity Kol skii Filial AN SSSR",-"Apei. Apeiron",-"ApMat Aplikace Matematiky, Applied Mathematics",-"AppAn Applicable Analysis",-"ApMa. Applications of Mathematics",-"ApAc. Applied Acoustics",-"ApAI. Applied Artificial Intelligence",-"ApCM. Applied Composite Materials",-"ACESJ Applied Computational Electromagnetics Society Journal",-"ApEn. Applied Energy",-"ApEnM Applied Environmental Microbiology",-"ApGeo Applied Geophysics",-"ApMF. Applied Mathematical Finance",-"AMat. Applied Mathematics",-"ApMM. Applied Mathematics and Mechanics",-"ApMaC Applied Mathematics Computation",-"ApMaL Applied Mathematics Letters",-"ApMaM Applied Mathematics Mechanics English Edition",-"ApMaO Applied Mathematics Optimization",-"AMM.. Applied Mechanics and Materials",-"ApMRv Applied Mechanics Reviews",-"ApMic Applied Microbiology",-"ApMT. Applied Microgravity Technology",-"ApNan Applied Nanoscience",-"ApNM. Applied Numerical Mathematics",-"ApOpt Applied Optics",-"ApPhy Applied Physics",-"ApPhA Applied Physics A: Materials Science &",-"ApPhB Applied Physics B: Lasers and Optics",-"ApPPL Applied Physics B Photophysics Laser Chemistry",-"ApPhC Applied Physics Communications",-"APExp Applied Physics Express",-"ApPhL Applied Physics Letters",-"ApPhR Applied Physics Research",-"ApScR Applied Scientific Research",-"ApSRA Applied Scientific Research Section A",-"ApSRB Applied Scientific Research Section B",-"ApSpe Applied Spectroscopy",-"ApSRv Applied Spectroscopy Reviews",-"ApSup Applied Superconductivity",-"ApSS. Applied Surface Science",-"ApWS. Applied Water Science",-"APS.. APS Meeting Abstracts",-"ACMFE Aquatic Conservation: Marine and Freshwater Ecosystems",-"AJSE. Arabian Journal of Science Engineering",-"Arch. Archaeoastronomy",-"ArchS Archaeoastronomy Supplement",-"Archa Archaeometry",-"ASBTV Archenhold-Sternwarte Berlin-Treptow, Vortrage Schr.",-"ArApM Archive Applied Mechanics",-"AHES. Archive for History of Exact Sciences",-"ArRMA Archive for Rational Mechanics and Analysis",-"ArElU Archiv Elektronik und Uebertragungstechnik",-"AAM.. Archive of Applied Mechanics",-"ArApM Archive of Applied Mechanics",-"ArBB. Archive of Biochemistry and Biophysics",-"ArAco Archives Acoustics",-"ArS.. Archives des Sciences",-"ArSPN Archives des Sciences Physiques et Naturelles",-"AMGBA Archives for Meteorology Geophysics and Bioclimatology Series A Meteorology and Atmopsheric Physics",-"AMGBB Archives for Meteorology Geophysics and Bioclimatology Series B Theoretical and Applied Climatology",-"AIPBB Archives Internationales de Physiologie de Biochimie et de Biophysique",-"ArNSc Archives Neerlandaises des Sciences Exactes et Naturelles",-"ArMaN Archiv for Mathematik og Naturvidenskab",-"AMGBK Archiv Meteorologie Geophysik und Bioklimatologie Serie B Klimatologie und Umweltmeteorologie Strahlungsforschung",-"AMGBS Archiv Meteorologie Geophysik und Bioklimatologie Serie Meteorologie und Geophysik",-"ArMeS Archiv of Mechanics, Archiwum Mechaniki Stosowanej",-"ArCom Archivum Combustionis",-"ArAku Archiwum Akustyki",-"ArAuT Archiwum Automatyki i Telemechaniki",-"ArBuM Archiwum Budowy Maszyn",-"ArEle Archiwum Elektrotechniki",-"ArMeS Archiwum Mechaniki Stosowanej",-"ArPSp Archiwum Procesow Spalania",-"ArTSp Archiwum Termodynamiki i Spalania",-"AAAR. Arctic, Antarctic and Alpine Research",-"ArA.. Arkiv for Astronomi",-"ArM.. Arkiv for Matematik",-"ArMAF Arkiv for Matematik, Astronomi och Fysik",-"ArmOL Armagh Observatory Leaflet",-"ArJPh Armenian Journal of Physics",-"ArtSa Artificial Satellites",-"astro ArXiv Astrophysics e-prints",-"cs... ArXiv Computer Science e-prints",-"arXiv ArXiv e-prints",-"gr.qc ArXiv General Relativity and Quantum Cosmology eprints",-"hepex ArXiv High Energy Physics - Experiment e-prints",-"hepla ArXiv High Energy Physics - Lattice e-prints",-"hepph ArXiv High Energy Physics - Phenomenology e-prints",-"hepth ArXiv High Energy Physics - Theory e-prints",-"mathp ArXiv Mathematical Physics e-prints",-"math. ArXiv Mathematics e-prints",-"nlin. ArXiv Nonlinear Sciences e-prints",-"nucle ArXiv Nuclear Experiment e-prints",-"nuclt ArXiv Nuclear Theory e-prints",-"physicArXiv Physics e-prints",-"ASHRA ASHRAE Journal",-"AsJPh Asian Journal of Physics",-"Aslib Aslib Proceedings: new information perspectives",-"ATJEM ASME Transactions Journal Engineering Materials and Technology",-"ATJDS ASME Transactions Journal of Dynamic Systems and Measurement Control B",-"ATJEl ASME Transactions Journal of Electronic Packaging",-"ATJEG ASME Transactions Journal of Engineering Gas Turbines and Power",-"ATJEP ASME Transactions Journal of Engineering Power",-"ATJFE ASME Transactions Journal of Fluids Engineering",-"ATJHT ASME Transactions Journal of Heat Transfer",-"ATJLT ASME Transactions Journal of Lubrication Technology",-"ATJSE ASME Transactions Journal of Solar Energy and Engineering",-"ATJTr ASME Transactions Journal of Tribology",-"ATJTu ASME Transactions Journal of Turbomachinery",-"ATJVA ASME Transactions Journal of Vibration Acoustics",-"ATJAM ASME Transactions Series E Journal of Applied Mechanics",-"ATJEP ASME Transactions Series Journal of Engineering Power",-"AsAut Assembly Automation",-"ATMAB Association Technique Maritime et Aeronautique Bulletin",-"ATMAS Association Technique Maritime et Aeronautique Session Paris France ONERA TP",-"AVSVB Associazione Veneta Osservatori di Stelle Variabili Bulletin",-"Aster Aster",-"StNws ASTM Standardization News",-"AsBio Astrobiology",-"AISAO Astrofizicheskie Issledovaniia Izvestiya Spetsial'noj Astrofizicheskoj Observatorii",-"AISof Astrofizicheskie Issledovaniya Sofia",-"Afz.. Astrofizika",-"AAfz. Astrometriia i Astrofizika",-"AsAc. Astronautica Acta",-"AsAcS Astronautica Acta Supplement",-"AsAer Astronautics Aeronautics",-"Asnau Astronautik",-"AUBas Astron. Inst. Univ. Basel",-"Anews ASTRON Newsletter",-"AsUAI Astronomia. La rivista dell' Unione Astrofili Italiani",-"Astnm Astronomia UAI",-"USNOM Astronomical and Meteorological Observations made at the U.S. Naval Observatory",-"ACiCh Astronomical Circular",-"ACMan Astronomical Contributions from the University of Manchester",-"TamCo Astronomical Contributions from the University of South Florida Tampa",-"adass Astronomical Data Analysis Software and Systems",-"ADCBu Astronomical Data Center Bulletin",-"AstHe Astronomical Herald",-"AstLt Astronomical Letters",-"ANote Astronomical Notes University of Gothenburg Sweden Section of Astronomy",-"USNOA Astronomical Observations made at the U.S. Naval Observatory",-"UCLAP Astronomical Papers University of California Los Angeles",-"AReg. Astronomical Register",-"ASSA. Astronomical Society of South Africa, Cape Centre",-"AVest Astronomicheskii Vestnik",-"AVISS Astronomicheskii Vestnik Issledovaniia Solnechnoi Sistemy",-"AZh.. Astronomicheskii Zhurnal",-"ATsir Astronomicheskij Tsirkulyar",-"KazOB Astronomicheskoj Observatorii Kazan Byulleten",-"AsSch Astronomie in der Schule",-"AAAN. Astronomische Abhandlungen als Erganzungshefte zu den Astronomische Nachrichten",-"AAHam Astronomische Abhandlungen der Hamburger Sternwarte",-"ABMun Astronomische Beobachtungen angestellt auf der K. Sternwarte zu Bogenhausen bei Muenchen",-"ABSBe Astronomische Beobachtungen auf der Koniglichen Sternwarte zu Berlin",-"ABKie Astronomische Beobachtungen auf der Sternwarte der Koeniglichen Christian-Albrechts-Universitaet zu Kiel",-"MiZur Astronomische Mitteilungen der Eidgenössischen Sternwarte Zurich",-"MiBre Astronomische Mitteilungen der Koeniglichen Universitaets-Sternwarte zu Breslau",-"MiGoe Astronomische Mitteilungen der Universitaets-Sternwarte zu Goettingen",-"AN... Astronomische Nachrichten",-"ANS.. Astronomische Nachrichten Supplement",-"MitSZ Astronomischen Mitteilungen Eidgen. Sternwarte Zurich",-"AJB.. Astronomischer Jahresbericht",-"MiARI Astronomisches Rechen-Institut Heidelberg Mitteilungen Serie A",-"MiARB Astronomisches Rechen-Institut Heidelberg Mitteilungen Serie B",-"ATi.. Astronomisk Tidsskrift",-"Ast.. Astronomy",-"Astro Astronomy",-"AstAp Astronomy and Astro-Physics (formerly The Sidereal Messenger)",-"ADIL. Astronomy Data Image Library",-"AEdRv Astronomy Education Review",-"AExpr Astronomy Express",-"AstL. Astronomy Letters",-"AsNow Astronomy Now",-"AstQ. Astronomy Quarterly",-"ARep. Astronomy Reports",-"AASPP Astrononomy and Astrophysics Series",-"APh.. Astroparticle Physics",-"AstBu Astrophysical Bulletin",-"ApInv Astrophysical Investigations",-"ApL.. Astrophysical Letters",-"ApNr. Astrophysica Norvegica",-"Ap... Astrophysics",-"ASPRv Astrophysics and Space Physics Reviews",-"ApSSP Astrophysics and Space Science Proceedings",-"ASTRA Astrophysics and Space Sciences Transactions",-"ApSSS Astrophysics and Space Science Supplement",-"MKAtl Astrophysics monographs University of Chicago Press",-"ArBei Astrophysics Reports Publications of the Beijing Astronomical Observatory",-"ApT.. Astrophysics Today",-"AstPo Astropolitics",-"AsAna Asymptotic Analysis",-"BLabR AT&",-"AJSEd Atlas Journal of Science Education",-"AtlVS Atlas Poiskovykh Kart Peremennykh Zvezd",-"Atmos Atmosphere",-"AtO.. Atmosphere Ocean",-"AtOpt Atmosphere Optics",-"ACP.. Atmospheric Chemistry &",-"ACPD. Atmospheric Chemistry &",-"AtmEn Atmospheric Environment",-"AMT.. Atmospheric Measurement Techniques",-"AMTD. Atmospheric Measurement Techniques Discussions",-"AtmRe Atmospheric Research",-"AtSc. Atmospheric Science",-"AtScL Atmospheric Science Letters",-"AtmTe Atmospheric Technology",-"atnfp ATNF Proposal",-"Atom. Atom",-"AD... Atomic Data",-"ADNDT Atomic Data and Nuclear Data Tables",-"AtERv Atomic Energy Review",-"AMOP. Atomic Molecular and Optical Physics",-"AtPhy Atomic Physics",-"AtST. Atomisation Spray Technology",-"AtKe. Atomkernenergie",-"AtEn. Atomnaia Energiia",-"AVET. Atomno Vodorodnaia Energetika i Tekhnologiia",-"ATR.. ATR Australian Telecommunication Research",-"AALST Atti Accad. Ligure Sci. Lett.",-"AAPon Atti Accad. Pontaniana",-"AAST. Atti Accad. Sco. Torino I",-"ATTTJ AT T Technical Journal",-"AurPh Auroral physics",-"AuJAR Australian Journal of Agricultural Research",-"AuJA. Australian Journal of Astronomy",-"AuJCE Australian Journal of Chemical Education",-"AJCh. Australian Journal of Chemistry",-"AuJES Australian Journal of Earth Sciences",-"AuJPh Australian Journal of Physics",-"AuJPA Australian Journal of Physics Astrophysical Supplement",-"AuSRA Australian Journal of Scientific Research A Physical Sciences",-"AJSR. Australian Journal of Soil Research",-"AuMSJ Australian Mathematical Society Journal Series B -- Applied Mathematics",-"AuMM. Australian Meteorological Magazine",-"Autom Automatica",-"ACTAp Automatic Control Theory Applications",-"AuRob Autonomous Robots",-"AvSeM Aviation Space and Environmental Medicine",-"AvWST Aviation Week Space Technology",-"AvKos Aviatsiia i Kosmonavtika",-"AvTek Aviatsionnaia Tekhnika",-"AvTel Avtomatika i Telemekhanika",-"AvPE. Avtomatizatsiia Proektirovaniia Elektronike",-"Avtme Avtometriia",-"BBUSS Babes Bolyai Universitas Studia Series Mathematica",-"BBUSM Babes Bolyai Universitas Studia Series Physica",-"BaPhL Balkan Physics Letters",-"BaltA Baltic Astronomy",-"BamKV Bamberg Kleine Veroeffentlichungen der Remeis-Sternwarte",-"BAVRu BAV Rundbrief",-"BAVSR BAV Rundbrief - Mitteilungsblatt der Berliner Arbeits-gemeinschaft fuer Veraenderliche Sterne",-"BAWMN Bayerische Akademie Wissenschaften mathematisch naturwissenschaftliche Klasse Sitzungsberichte",-"BayAn Bayesian Analysis",-"BBCEn BBC Engineering",-"BRMIC Behavior Research Methods Instruments and Computers",-"BIT.. Behaviour &",-"BUAAJ Beijing University Aeronautics and Astronautics Journal",-"BePl. Beitraege Plasmaphysik",-"BeiGe Beitraege zur Geophysik",-"BeiMP Beitraege zur Mineralogie und Petrographie",-"BROGS Belgian Royal Observatory Communications Series Geophysics Series",-"BKAD. Beobachtungen der Kaiserlichen Universitaets-Sternwarte Dorpat",-"BKUJ. Beobachtungen der Kaiserlichen Universitaets-Sternwarte Jurjew",-"BESBe Beobachtungs-Ergebnisse der Koniglichen Sternwarte zu Berlin",-"ANZi. Beobachtungs-Zirkular der Astronomischen Nachrichten",-"BBGPC Berichte der Bunsen-Gesellschaft Physical Chemistry Chemical Physics Berichte",-"BADPG Berlin East Germany Akademie Verlag GmbH Ergebnisse Plasmaphysik und Gaselektronik",-"BAVMM Berlin East Germany Akademie Verlag GmbH Shriftenreihe des Zentralinstituts Mathematik und Mechanik",-"BAVSM Berliner Arbeitsgemeinschaft fuer Veraenderliche Sterne - Mitteilungen",-"BGBGM Berlin Gebrueder Borntraeger Geoexploration Monographs Series",-"Bern. Bernoulli",-"BeElM Beskontaktnye Elektricheskie Mashiny",-"BeSN. Be Star Newsletter",-"BGIBI BGI Bulletin d'Information",-"AstBa Biblioteca Astrei Basarabene",-"BEPM. Bielefeld Encounters in Physics and Mathematics",-"BiLuf Bildmessung und Luftbildwessen",-"BBRC. Biochemical and Biophysical Research Communications",-"BioJ. Biochemical Journal",-"BCB.. Biochemistry and Cell Biology",-"AcBB. Biochimica et Biophysica Acta",-"BioFa Biofabrication",-"BGeo. Biogeosciences",-"BGD.. Biogeosciences Discussions",-"BMNAS Biographical Memoirs National Academy of Sciences",-"BMFRS Biographical Memoirs of Fellows of the Royal Society",-"BiBi. Bioinspiration and Biomimetics",-"BMP.. Biological and Medical Physics",-"BPS.. Biological Physics Series",-"BRCPS Biological Reviews of the Cambridge Philosophical Society",-"BioMa Biomedical Materials",-"BioMi Biomedical Microdevices",-"Biome Biometrika",-"Bion. Bionika",-"BioCh Biophysical Chemistry",-"BpJ.. Biophysical Journal",-"BpBeS Biophysics and Bioengineering Series",-"BioSM Biophysics of Structure and Mechanism",-"Bioph Biophysics USSR",-"Biopk Biophysik",-"Biorh Biorheology",-"BioSc BioScience",-"BiotL Biotechnology Letters",-"BOTor Biuletyn Obserwatoium Astronomicznego Uniwersytetu M. Kopernika w Toruniu",-"BITad Biulletini of the Astronomical Institute Akademiia Nauk Tadzhikskoi",-"BIAst Bjull. Inst. Astrofizikii",-"BlazD BLAZAR Data",-"BAAA. Boletin de la Asociacion Argentina de Astronomia La Plata Argentina",-"BAOM. Boletin de la Astronomico Observatorio de Madrid",-"BIMAF Boletin del Instituto de Matematica Astronomica y Fisica Universidad Nacional de Cordoba Argentina",-"BITon Boletin del Instituto de Tonantzintla",-"BOTT. Boletin de los Observatorios Tonantzintla y Tacubaya",-"BMOE. Boletin mensual del Observatorio del Ebro",-"BlDok Bolgarska Akademiia Nauk Doklady",-"BSVit Bolletino della Societa dei Variabilisti Italiani",-"BoSAI Bollettino della Societa Astronomica Italiana",-"BGSA. Bollettino Geod. Scienzi Affini",-"BonD. Bonner Durchmusterung",-"BoLMe Boundary-Layer Meteorology",-"Brain Brain",-"BVVSA Bratislava Veda Vydavatelstvo Slovenskej Akademie Vied",-"BFWSG Braunschweig Friedr Vieweg und Sohn GmbH",-"BTUM. Braunschweig Technische Universitaet Mitteilungen",-"BrJPh Brazilian Journal of Physics",-"BrWK. Brennstoff Waerme Kraft",-"BJAP. British Journal of Applied Physics",-"BJET. British Journal of Educational Technology",-"BJMSP British Journal of Mathematical and Statistical Psychology",-"BJP.. British Journal of Psychology",-"BTE.. British Telecommunications Engineering",-"BIRM. Brussels Institute Royal Meteorologique de Belgique",-"BuAkK Budapest Akademiai Kiado",-"BlgAJ Bulgarian Astronomical Journal",-"BlGJ. Bulgarian Geophysical Journal",-"BlJMH Bulgarian Journal of Meteorology and Hydrology",-"BlJPh Bulgarian Journal of Physics",-"BlJPS Bulgarian Journal of Physics Supplement",-"BlGeo Bulgarska Akademiia Naukite Geofizichni Institut Izvestiia",-"BlTek Bulgarska Akademiia Naukite Institut Tekhnicheska Kibernetika Izvestiia",-"BlMat Bulgarska Akademiia Naukite Matematicheski Institut Izvestiia",-"BlSpi Bulgarska Akademiia Naukite Spisanie",-"BlTse Bulgarska Akademiia Naukite Tsentralna Laboratoriia Geodeziia Izvestiia",-"BlGSp Bulgarsko Geofizichno Spisanie",-"BAFOE Bulletin Association Fran. Obs. Etoiles Variables",-"BuAst Bulletin Astronomique",-"BABel Bulletin Astronomique de Belgrade",-"BuAsR Bulletin Astronomique, Revue Generale des Travaux Astronomiques",-"BuAsI Bulletin Astronomique, Serie I",-"BuChr Bulletin Chronometrique (Besancon)",-"BCSAB Bulletin Cl. Science Academy Royal de Belgique",-"BCrAO Bulletin Crimean Astrophysical Observatory",-"BAPSS Bulletin de l'Academie Polonaise des Sciences Series des Sciences Mathematiques Astronomiques et Physiques",-"BARB. Bulletin de l'Academie Royale de Belgique",-"BSAF. Bulletin de la Societe Astronomique de France",-"BSAFR Bulletin de la Societe Astronomique de France et Revue Mensuelle d'Astronomie, de Meteorologie et de Physique du Globe",-"BSAL. Bulletin de la Societe Astronomique de Liege",-"BSBA. Bulletin de la Societe Belge d'Astronomie",-"BSRSL Bulletin de la Societe Royale des Sciences de Liege",-"AFOEV Bulletin de l'Association Francaise d'Observateurs d'Etoiles Variables",-"BMai. Bulletin de la Station Astrophotographique de Mainterne",-"BOBeo Bulletin de l'Observatoire Astronomique de Belgrade",-"BuLyo Bulletin de l'Observatoire de Lyon",-"BBSAG Bulletin der Bedeckungsveraenderlichen-Beobachter der Schweizerischen Astronomischen Gesellschaft",-"BIEBe Bulletin d'Information d'Etoiles Be",-"BIM.. Bulletin d'Information des Marees Terrestres",-"BIBGI Bulletin d'Information du Bureau Gravimetrique International",-"BICDS Bulletin d'Information du Centre de Donnees Stellaires",-"BCFHT Bulletin d'information du telescope Canada-France-Hawaii",-"BGeod Bulletin Geodesique",-"BGNS. Bulletin Geodesique, Nouvelle Series",-"BuBIH Bulletin Horaire du Bureau International de l'Heure",-"BOPul Bulletin (Izvestiya) de l'Observatoire Central a Poulkovo",-"BuMat Bulletin Mathematique",-"BKoAS Bulletin of Korean Astronomical Society",-"BMBio Bulletin of Mathematical Biology",-"BMBp. Bulletin of Mathematical Biophysics",-"BPAS. Bulletin of Pure and Applied Science (Physics)",-"BAAPG Bulletin of the American Association of Petroleum Geologists",-"BAVSO Bulletin of the American Association of Variable Stars Observers",-"BAAS. Bulletin of the American Astronomical Society",-"BAMaS Bulletin of the American Mathematical Society",-"BAMS. Bulletin of the American Meteorological Society",-"BAPS. Bulletin of the American Physical Society",-"BAICz Bulletin of the Astronomical Institutes of Czechoslovakia",-"BAN.. Bulletin of the Astronomical Institutes of the Netherlands",-"BANS. Bulletin of the Astronomical Institutes of the Netherlands Supplement Series",-"BAORB Bulletin of the Astronomical Observatoire Royale de Belgique",-"IllOB Bulletin of the Astronomical Observatory of the University of Illinois",-"BASBr Bulletin of the Astronomical Society of Brazil",-"BASI. Bulletin of the Astronomical Society of India",-"BCAIC Bulletin of the Central Astronomical Institute of Czechoslovakia",-"BuGSA Bulletin of the Geological Society of America",-"BIMIA Bulletin of the Institute of Mathematics and Its Applications",-"BuIPS Bulletin of the Israel Physical Society",-"BKobO Bulletin of the Kobe Marine Observatory Kobe Japan",-"BLPI. Bulletin of the Lebedev Physics Institute",-"BuLMS Bulletin of the London Mathematical Society",-"BRASP Bulletin of the Russian Academy of Science, Phys.",-"BSAst Bulletin of the Section of Astronomy",-"BSAE. Bulletin of the Soviet Antarctic Expedition",-"BuONC Bulletin of the Special Astrophysical Observatory, Northern Caucasus",-"BSAO. Bulletin of the Special Astrophysics Observatory",-"BTasO Bulletin of the Tashkent Observatory",-"BTok. Bulletin of the Tokyo Astronomical Observatory",-"BToIT Bulletin of the Tokyo Institute of Technology",-"BUBes Bulletin of the University of Besancon Observatory",-"BYam. Bulletin of the Yamagata University Yamagata Japan",-"YerOB Bulletin of the Yerkes Observatory of the University of Chicago",-"BVol. Bulletin of Volcanology",-"BCNRS Bulletin Signaletique - Centre National de la Recherche Scientifique",-"BSAO. Bull. Special Astrophys. Obs.",-"BIHCD Bureau Internationale Heure, Paris, Circulaire",-"BDus. Byulleten' Instituta Astrofiziki Dushanbe Akademiya Nauk Tadzhikskoj SSR",-"BITA. Byulleten' Instituta Teoreticheskoj Astronomii (Leningrad)",-"BStaO Byulleten' Stalinabadskoj Astronomicheskoj Observatorii Akademiya Nauk Tadzhikskoj SSR",-"ByuRe Byurakan Astrophysical Observatory Armenia USSR Reprints",-"ByuPr Byurakanskaya Astrofizicheskaya Observatoriya Preprint",-"CahPh Cahiers de Physique",-"CAS.. Cambridge Astrophysics Series",-"CCA.. Cambridge Contemporary Astrophysics",-"CamRe Cambridge Observatories Reprints",-"CMPNC Cambridge Monographs on Particle Physics, Nuclear Physics and Cosmology",-"CMPPh Cambridge Monographs on Plasma Physics",-"CSLPT Cambridge Studies in Low Temperature Physics",-"CTMPC Cambridge Topics in Mineral Physics and Chemistry",-"BCNRC Canada National Research Council Division Mechanical Engineering National Aeronautical Establishment Quarterly Bulletin",-"CASJ. Canadian Aeronautics and Space Journal",-"CASJQ Canadian Aeronautics and Space Journal Quarter",-"CEEJ. Canadian Electrical Engineering Journal",-"CaGeJ Canadian Geotechnical Journal",-"CIPSG Canadian Information Processing Society Graphics Interface",-"CJChE Canadian Journal of Chemical Engineering",-"CaJCh Canadian Journal of Chemistry",-"CaJCE Canadian Journal of Civil Engineering",-"CaJES Canadian Journal of Earth Sciences",-"CJECE Canadian Journal of Electrical Computer Engineering",-"CJMat Canadian Journal of Mathematics",-"CaJPh Canadian Journal of Physics",-"CaJPS Canadian Journal of Physics Supplement",-"CaJRS Canadian Journal of Remote Sensing",-"CJRA. Canadian Journal of Research Section A",-"CJSMT Canadian Journal of Science Mathematics and Technology Education",-"CaJSS Canadian Journal of Soil Science",-"CaRes Cancer Research",-"CPhD. Cape Photographic Durchmusterung",-"CarR. Caries Research",-"GCRV. Carnegie Institute Washington D.C. Publication",-"CarOB Carter Observatory Wellington New Zealand Astronomical Bulletins",-"CarRe Carter Observatory Wellington New Zealand Reprints",-"CasRe Case Western Reserve University Warner and Swasey Observatory Cleveland Ohio Reprints",-"CASI. CASI Transactions",-"CSVS. Catalogue of suspected variable stars. Acad. of Sciences USSR Shternberg.",-"CatL. Catalysis Letters",-"CarRv Catalysis Reviews",-"Catt. CATTECH",-"CCDA. CCD Astronomy",-"CEGB. CEGB Research",-"CeMec Celestial Mechanics",-"CeMDA Celestial Mechanics and Dynamical Astronomy",-"Cell. Cell",-"Cellu Cellulose",-"Cent. Centaurus",-"CfAPr Center for Astrophysics Cambridge Mass Preprint Series",-"CBET. Central Bureau Electronic Telegrams",-"CEAB. Central European Astrophysical Bulletin",-"CEJE. Central European Journal of Engineering",-"CEJG. Central European Journal of Geosciences",-"CEJPh Central European Journal of Physics",-"CPH.. Centre de Physique des Houches",-"CCpFS Ceskoslovensky Casopis pro Fyziku Sekce",-"CFDAA CFD Advances Applications",-"CKH.. Chagyo Kenkyu Hokoku (Tea Research Journal)",-"ChNew Chandra News",-"Chaos Chaos",-"CSF.. Chaos Solitons and Fractals",-"ChCom Chemical Communications",-"ChEdu Chemical Educator",-"ChEnC Chemical Engineering Communications",-"ChEnN Chemical Engineering News",-"CERDA Chemical Engineering Research &",-"ChEnS Chemical Engineering Science",-"ChGeo Chemical Geology",-"CP... Chemical Physics",-"CPL.. Chemical Physics Letters",-"CPSS. Chemical Physics of Solid Surfaces",-"CPSSH Chemical Physics of Solid Surfaces and Heterogeneous Catalysis",-"CPR.. Chemical Physics Reports",-"ChSRv Chemical Society Reviews",-"ChEG. Chemie der Erde / Geochemistry",-"CEJ.. Chemistry A European Journal",-"CPCar Chemistry and Physics of Carbon",-"CPLip Chemistry and Physics of Lipids",-"ChUDA Chile Universidad Departamento de Astronomia Publicaciones",-"ChOE. China Ocean Engineering",-"ChRST China Rept Sci Technol JPRS CST",-"ChA.. Chinese Astronomy",-"ChIEJ Chinese Institute of Engineers Journal",-"ChJA. Chinese Journal of Aeronautics",-"ChJAA Chinese Journal of Astronomy and Astrophysics",-"ChJAS Chinese Journal of Astronomy and Astrophysics Supplement",-"ChJCP Chinese Journal of Chemical Physics",-"ChJG. Chinese Journal of Geophysics",-"ChJIR Chinese Journal of Infrared Research",-"ChJL. Chinese Journal of Lasers",-"ChJLB Chinese Journal of Lasers B",-"CJLTP Chinese Journal of Low Temperature Physics",-"ChJME Chinese Journal of Mechanical Engineering",-"ChJNP Chinese Journal of Nuclear Physics",-"ChJOL Chinese Journal of Oceanology and Limnology",-"ChJPh Chinese Journal of Physics",-"ChJPR Chinese Journal of Polar Research",-"ChJS. Chinese Journal of Semiconductors",-"ChJSS Chinese Journal of Space Science",-"ChOpL Chinese Optics Letters",-"ChPhy Chinese Physics",-"ChPhB Chinese Physics B",-"ChPhC Chinese Physics C",-"ChPhL Chinese Physics Letters",-"ChSBu Chinese Science Bulletin",-"ChSAJ Chinese Society of Astronautics Journal",-"ChSMJ Chinese Society of Mechanical Engineers Journal",-"ChSST Chinese Space Science Technology",-"CMDRG Chislennye Metody Dinamike Razrezhennykh Gazov",-"CHOCS CHOCS",-"CITM. Chubu Institute Technology Memoirs",-"CIDA. CIDA",-"CTE.. Ciencias de la Tierra y del Espacio",-"CiInf Circ. Inf.",-"CiSSV Circolare Interna della Sezione Stelle Variabili dell'Unione Astrofili Italiani",-"CSSP. Circuits Systems and Signal Processing",-"CirW. Circuit World",-"CAFOE Circulaire de l'Association Francaise d'Observateurs d'Etoiles Variables",-"CiBAA Circular of the British Astronomical Association",-"CiUO. Circular of the Union Observatory Johannesburg",-"CiPoJ Circumpolar Journal",-"CQGra Classical and Quantum Gravity",-"CQGrS Classical and Quantum Gravity Supplement",-"CRMMP Classical Reviews in Mathematics and Mathematical Physics",-"CTPhy Classical Theoretical Physics",-"CCM.. Clays and Clay Minerals",-"ClDy. Climate Dynamics",-"CliPa Climate of the Past",-"CliPD Climate of the Past Discussions",-"ClCh. Climatic Change",-"COIR. Clinical Oral Implants Research",-"CPPM. Clinical Physics and Physiological Measurement",-"CNRAe CNR Aeritalia S",-"CODAB CODATA Bulletin",-"Coel. Coelum Periodico Bimestrale per la Divulgazione dell'Astronomia",-"AeSc. Collection of Papers on Aerospace Science",-"ColJ. Colloid Journal",-"ColSu Colloids and Surfaces",-"CPC.. Combinatorics, Probability and Computing",-"CoFl. Combustion and Flame",-"CST.. Combustion Science and Technology",-"CTM.. Combustion Theory Modelling",-"CNSMP Comet News Service, McDonnell Planetarium",-"CPMCM Commentationes Physico-Mathematicae et Chemico-Medicae",-"ComMP Comments in Modern Physics",-"ComAp Comments on Astrophysics",-"CoASP Comments on Astrophysics and Space Physics",-"CoAMP Comments on Atomic and Molecular Physics",-"CoCMP Comments on Condensed Matter Physics",-"CoNPP Comments on Nuclear and Particle Physics",-"CoPPC Comments on Plasma Physics and Controlled Fusion",-"ComSp Commercial Space",-"CoKon Commmunications of the Konkoly Observatory Hungary",-"CAPJ. Communication Astronomy with the Public Journal",-"ComBr Communication Broadcasting",-"CoSSC Communication in Statistics - Simulation and Computation",-"CoSTM Communication in Statistics - Theory and Methods",-"Commu Communications",-"CoORB Communications de l'Observatoire Royal de Belgique",-"MonAP Communications du Departement d'Astrophysique de la Faculte des Sciences de Mons Mons Astrophysical Papers",-"CoDDO Communications from the David Dunlap Observatory",-"CoMtW Communications from the Mount Wilson Solar Observatory to the National Academy of Sciences",-"CoRad Communications from the Radcliffe Observatory Pretoria South Africa",-"CoROE Communications from the Royal Observatory Edinburgh",-"CoOxf Communications from the University Observatory Oxford",-"CoStA Communications from the University Observatory St Andrews Scotland",-"CEST. Communications Gillies Inc Electronic Systems in Transportation",-"CoAlg Communications in Algebra",-"CANM. Communications in Applied Numerical Methods",-"CoAst Communications in Asteroseismology",-"CCoPh Communications in Computational Physics",-"CMaPh Communications in Mathematical Physics",-"CNSNS Communications in Nonlinear Science and Numerical Simulations",-"CNME. Communications in Numerical Methods in Engineering",-"CoPDE Communications in Partial Differential Equations",-"CPAM. Communications in Pure Applied Mathematics",-"CoTPh Communications in Theoretical Physics",-"CoAnk Communications of the Department of Astronomy of Ankara University",-"CoLPL Communications of the Lunar and Planetary Laboratory",-"CoLon Communications of the University of London Observatory",-"CPhy. Communications on Physics",-"CRLJ. Communications Research Laboratory Journal",-"CRLRv Communications Research Laboratory Review",-"ComSo Communications Society",-"Compe COMPEL: The International Journal for Computation and Mathematics in Electrical and Electronic Engineering",-"CoVar Complex Variables",-"Compo Composites",-"CmpEn Composites Engineering",-"CmpMa Composites Manufacturing",-"ComST Composites Science Technology",-"CmpSt Composite Structures",-"CoMat Compositio Mathematica",-"CRSPH Compte Rendu des Seances de la Societe de Physique et d'Histoire Naturelle de Genere",-"CR... Comptes Rendus Academie des Sciences (serie non specifiee)",-"CRABS Comptes Rendus de l'Academie Bulgare des Sciences",-"CRASE Comptes Rendus de l'Académie des Sciences - Series IIA - Earth and Planetary Science",-"CRGeo Comptes Rendus Geoscience",-"CRMat Comptes Rendus Mathematique",-"CRMec Comptes Rendus Mecanique",-"CRPhy Comptes Rendus Physique",-"CAMP. Computational and Applied Mathematical Physics",-"ComMS Computational Materials Science",-"CMMPh Computational Mathematics and Mathematical Physics",-"CompM Computational Mechanics",-"COA.. Computational Optimization and Applications",-"CSMA. Computational Structural Mechanics and Applications",-"Compr Computer",-"CAD.. Computer-Aided Design",-"CGIP. Computer Graphics Image Processing",-"CMAME Computer Methods in Applied Mechanics and Engineering",-"CoPhC Computer Physics Communications",-"CoPhR Computer Physics Reports",-"CBR.. Computers and Biomedical Research",-"CEE.. Computers and Electrical Engineering",-"CF... Computers and Fluids",-"CG... Computers and Geosciences",-"CMwA. Computers and Mathematics with Applications",-"CoStr Computers and Structures",-"CSEd. Computer Science Education",-"ComPh Computers in Physics",-"CVIU. Computer Vision and Image Understanding",-"CVGIP Computer Vision Graphics and Image Processing",-"Compu Computing",-"CSE.. Computing in Science and Engineering",-"ComSE Computing Systems in Engineering",-"COMTR COMSAT Technical Review",-"CoCoi Comunicacoes do Observatonio Astronomico da Universidade de Coimbra",-"CoMRA Concepts in Magnetic Resonances A",-"CoMRB Concepts in Magnetic Resonances B",-"CMPhy Condensed Matter Physics",-"CGDAM Conformal Geometry and Dynamics of the American Mathematical Society",-"CDT.. Connaissance des Temps",-"ConSc Connection Science",-"CoFra Consiglio Nazionale delle Ricerche Italia. Laboratorio di Astrofisica Frascati Roma Contributi",-"ConCP Contemporary Concepts in Physics",-"ConFP Contemporary Fundamental Physics",-"ConPh Contemporary Physics",-"CSR.. Continental Shelf Research",-"CMT.. Continuum Mechanics and Thermodynamics",-"CoIAP Contributions de l'Institut d'Astrophysique de Paris Serie A",-"CoIAB Contributions de l'Institut d'Astrophysique de Paris Serie B",-"CoAsi Contributions dell'Osservatorio Astrofisica dell'Universita di Padova in Asiago",-"CoMil Contributions dell'Osservatorio Astrononia di Milano-Merate",-"CoArm Contributions from the Armagh Observatory",-"CoThe Contributions from the Astronomical Department of the University of Thessaloniki",-"CoBos Contributions from the Bosscha Observervatory",-"CoCam Contributions from the Cambridge Observatory England",-"CoTol Contributions from the Cerro Tololo Inter-American Observatory",-"CoTok Contributions from the Department of Astronomy University of Tokyo",-"CoDAO Contributions from the Dominion Astrophysical Observatory in Victoria",-"CoDun Contributions from the Dunsink Observatory Dublin Ireland",-"CoKyo Contributions from the Institute of Astrophysics and Kwasan Observatory Kyoto",-"CoKit Contributions from the Kitt Peak National Observatory",-"CoKwa Contributions from the Kwasan and Hida Observatories University of Kyoto",-"CoIoa Contributions from the Laboratory of Astronomy - University of Ioannina Greece",-"CoMcD Contributions from the McDonald Observatory University of Texas Fort Davis",-"CMWCI Contributions from the Mount Wilson Observatory / Carnegie Institution of Washington",-"CoPri Contributions from the Princeton University Observatory",-"CoRut Contributions from the Rutherford Observatory of Columbia University New York",-"CoWas Contributions from the Washburn Observatory of the University of Wisconsin",-"CoAth Contributions from the Wroclaw Astronomical Observatory",-"CoLic Contributions of Lick Observatory",-"CLic2 Contributions of Lick Observatory, Series II",-"CoPer Contributions of Perkins Observatory",-"CoSka Contributions of the Astronomical Observatory Skalnate Pleso",-"CoSkL Contributions of the Astronomical Observatory Skalnate Pleso Letters",-"CoSkS Contributions of the Astronomical Observatory Skalnate Pleso Supplement",-"CoLou Contributions of the Louisiana State University Observatory Baton Rouge Louisiana",-"CoNMx Contributions of the Observatory of New Mexico State University Las Cruces New Mexico",-"CoBrn Contributions of the Public Observatory and Planetarium in Brno",-"CSASG Contributions of the Slovak Academy Sciences Geophysical Institute",-"CoWat Contributions of the University of Waterloo Observatory",-"CoVVO Contributions of the Van Vleck Observatory",-"ConAP Contributions to Atmospheric Physics/Beitraege zur Physik Atmosphaere",-"CoGG. Contributions to Geophysics and Geodesy",-"CoMP. Contributions to Mineralogy and Petrology",-"CoPP. Contributions to Plasma Physics",-"CoUCL Contributions Universite Catholique de Louvain",-"CoSte Contributions University of Arizona Steward Observatory Tucson Arizona",-"CoRHO Contributions University of Florida Rosemary Hill Observatory Gainesville",-"CoCom Control and Computers",-"CopRe Copenhagen University Observatory Reprints",-"CorRe Coral Reefs",-"CorD. Cordoba Durchmusterung",-"CAGHS Correspondance Astronomique, Geographique, Hydrographique et statistique",-"CosEl Cosmic Electrodynamics",-"CosRe Cosmic Research",-"CosSe Cosmic Search",-"CTP.. Course of Theoretical Physics",-"CRB.. C.R. Acad. Sci. Ser. B1",-"CraRe Cracow Observatory Reprints",-"CRSSM Critical Reviews in Solid State &",-"Cryo. Cryogenics",-"CryRp Crystallography Reports",-"CSSE. Cultural Studies of Science Education",-"CuCo. Culture and Cosmos",-"CAP.. Current Applied Physics",-"CCPCE Current Contents Physical Chemical and Earth Sciences",-"CEyeR Current Eye Research",-"CNan. Current Nanoscience",-"COSSM Current Opinion in Solid State and Materials Science",-"CSci. Current Science",-"CySys Cybernetics and Systems",-"CzJPh Czechoslovak Journal of Physics",-"CzJPB Czechoslovak Journal of Physics B",-"CzJPS Czechoslovak Journal of Physics Supplement",-"CzMJ. Czechoslovak Mathematical Journal",-"DTr.. Dalton Transactions",-"DMKD. Data Mining and Knowledge Discovery",-"DatSJ Data Science Journal",-"DDORe David Dunlap Observatory Richmond Hill Reprints",-"DeaCo Dearborn Observatory Contributions",-"DSR.. Deep Sea Research Part II: Topical Studies in Oceanography",-"DSRI. Deep Sea Research Part I: Oceanographic Research",-"DSNPR Deep Space Network Progress Report",-"Defek Defektoskopiia",-"DefEl Defense Electronics",-"DMJ.. Defense Management Journal",-"DeScE Defense Science Electronics",-"DSJ.. Defense Science Journal",-"DSRMC Defense Systems Review Military Communications",-"DSSN. Delta Scuti Star Newsletter",-"Sterb Der Sternenbote Monatsschrift fuer Oesterreichs Amateur-astronomen",-"DGKBA Deutsche Geodaetische Kommission Bayer. Akad. Wiss.",-"DGKBB Deutsche Geodaetische Kommission Bayer. Akad. Wiss. B",-"DGKGN Deutsche Geodaetische Kommission Gravity Network West Germany DSGN Data Adjustment",-"DeHyZ Deutsche Hydrographische Zeitschrift",-"DPhyG Deutsche Physikalische Gesellschaft",-"DSEG. Developments in Solid Earth Geophysics",-"DFVLR DFVLR",-"DRM.. Diamond and Related Materials",-"Stern Die Sterne",-"Welt. Die Weltall",-"DnU.. Differentsial nye Uravneniia",-"DSP.. Digital Signal Processing",-"Dimen Dimensions",-"DiSis Dinamicheskie Sistemy",-"DPM.. Dinamika i Prochnost Mashin",-"DiRaG Dinamika razrezhennykh gazov",-"DIO.. DIO",-"DCMP. Directions in Condensed Matter Physics",-"DISA. DISA Information",-"Disc. Discover",-"DImTe Display Imaging Technology",-"Displ Displays",-"DSE.. Distributed Systems Engineering",-"DLGRM DLGR Magnetofluiddyn",-"Dlib. D-Lib Magazine",-"DLRNa DLR Nachrichten",-"DOCi. Documentation des Observateurs Circulaire",-"DOIAP Documentation des Observateurs Institut d'Astrophysique de Paris",-"DoANT Doklady Akademiia Nauk TadzhSSR",-"DokAN Doklady Akad Nauk Minerologia USSR",-"DoBan Doklady Bolgarskoi Akademiia Nauk",-"DokES Doklady Earth Sciences",-"DokPC Doklady Physical Chemistry",-"DAOAR Dominion Astrophysical Observatory Annual Report",-"DorPo Dornier Post",-"DSO.. Double Star Observer",-"DSSC. Double Star Section Circulars",-"DudOR Dudley Observatory Reports",-"PODE. Dun Echt Observatory Publications",-"DunOP Dunsink Observatory Publications",-"DunRe Dunsink Observatory Reprints",-"DurOO Durham Observatory Observations",-"IzDus Dushanbe Izdatel Donish",-"DyeRe Dyer Observatory Reprints",-"DySys Dynamical Systems: An International Journal",-"DynCo Dynamics and Control",-"DSSys Dynamics and Stability of Systems",-"DyAtO Dynamics of Atmospheres and Oceans",-"EESC. Earth and Environmental Science Conference Series",-"EaEvS Earth and Evolution Sciences",-"EExSc Earth and Extraterrestrial Sciences",-"EaInt Earth Interactions",-"EOAST Earth-Oriented Applications and Space Technology",-"EEEV. Earthquake Engineering and Engineering Vibration",-"EaSci Earthquake Science",-"ESRv. Earth Science Reviews",-"ESPL. Earth Surface Processes and Landforms",-"ESD.. Earth System Dynamics",-"ESDD. Earth System Dynamics Discussion",-"ESSD. Earth System Science Data",-"ESSDD Earth System Science Data Discussions",-"EERST East European Rept Sci. Technol. JPRS ESA",-"EERSA East Europe Rept Sci Affairs JPRS",-"EBCi. Eclipsing Binaries Circulars",-"EcGH. Eclogae geologae Helvetii",-"Ecogr Ecography",-"EcGou Ecole de Goutelas",-"Earth eEarth",-"EartD eEarth Discussions",-"ETATF Eesti NSV Teaduste Akadeemia Toimetised Fuusika Matemaatika",-"IzmP. Ege University Izmir Publications of the Department of Astronomy",-"EJSM. e-Journal of Soft Materials",-"Elast Elastic",-"ECLRv Electrical Communication Laboratories Review",-"JElEn Electrical Engineering of Japan",-"EMPS. Electric Machines and Power Systems",-"Elecm Electromagnetics",-"EJSEd Electronic Journal of Science Education",-"EJSta Electronic Journal of Statistics",-"EJTP. Electronic Journal of Theoretical Physics",-"EML.. Electronic Materials Letters",-"ElPro Electronic Progress",-"JElCo Electronics Communications of Japan",-"ElL.. Electronics Letters",-"ElP.. Electronics Power",-"EOSD. Electro Optical Systems Design",-"ElLC. Electrotechnical Laboratory Circulars",-"ElLR. Electrotechnical Laboratory Researches",-"ElW.. Electrowaerme International",-"ElBah Elektrische Bahnen",-"Elem. Elektromekhanika",-"Elek. Elektronika",-"ElTA. Elektronnaia Tekhnika Avtomatike",-"ElMod Elektronnoe Modelirovanie",-"ETRE. Elektrosviaz Telecommunications Radio Engineering Telecommunications",-"EVest Elektrotehniski Vestnik",-"OED.. El Observador de Estrellas Dobles",-"ElUn. El Universo",-"EMCT. EMC Technology",-"EBBT. Emerging Biochemical and Biophysical Techniques",-"EAA.. Encyclopedia of Astronomy and Astrophysics",-"Endvr Endeavour",-"Energ Energetika",-"EnAt. Energia es Atomtechnika",-"EnUK. Energy",-"EnC.. Energy Conversion",-"ECM.. Energy Conversion Management",-"EnS.. Energy Sources",-"EnTR. Energy Technology Review",-"EnUK. Energy UK",-"EngAn Engineering Analysis",-"EnSci Engineering and Science",-"EngCo Engineering Computations",-"EnFM. Engineering Fracture Mechanics",-"EnOp. Engineering Optimization",-"CEnTp Engineering Thermophysics China",-"Entro Entropie",-"Entrp Entropy",-"EnAPC Environmental Analytical and Physical Chemistry Series",-"EES.. Environmental Earth Sciences",-"EnEng Environmental Engineering",-"EFM.. Environmental Fluid Mechanics",-"EnGeo Environmental Geology",-"EnMan Environmental Management",-"EnP.. Environmental Pollution Series B Chemical and Physical",-"ER... Environmental Research",-"ERL.. Environmental Research Letters",-"EnST. Environmental Science Technology",-"EnTox Environmental Toxicology",-"ETWQ. Environmental Toxicology and Water Quality",-"Env.. Environmentrics",-"EOSTr EOS Transactions",-"EL... EPL (Europhysics Letters)",-"EPRIJ EPRI Journal",-"AnErg Ergaenzungshefte zu den Astronomischen Nachrichten",-"ErNW. Ergebnisse der exakten Naturwissenschaften",-"ETDS. Ergodic Theory and Dynamical Systems",-"Ergo. Ergonomics",-"ESABu ESA Bulletin",-"ESAHR ESA History Study Reports",-"EIUEN ESA IUE Newsletter",-"ESAJ. ESA Journal",-"ESASM ESA Scientific &",-"ESAST ESA Scientific Technical Review",-"ESATM ESA Training Manual",-"EssPh Essays in Physics",-"ECSS. Estuarine Coastal and Shelf Science",-"EUCAS EUCASS Proceedings Series",-"EurSS Eurasian Soil Science",-"EJASP EURASIP Journal on Applied Signal Processing",-"EBioJ European Biophysics Journal",-"EJAM. European Journal of Applied Mathematics",-"EJBio European Journal of Biochemistry",-"EJC.. European Journal of Combinatorics",-"EJEE. European Journal of Engineering Education",-"EJMF. European Journal of Mechanics B Fluids",-"EJMS. European Journal of Mechanics Solids",-"EJPh. European Journal of Physics",-"EPJA. European Physical Journal A",-"EPJAP European Physical Journal Applied Physics",-"EPJAS European Physical Journal A Supplement",-"EPJB. European Physical Journal B",-"EPJC. European Physical Journal C",-"EPJCS European Physical Journal C Supplement",-"EPJD. European Physical Journal D",-"EPJE. European Physical Journal E",-"EPJH. European Physical Journal H",-"EPJP. European Physical Journal Plus",-"EPJST European Physical Journal Special Topics",-"EuRv. European Review",-"ESN.. European Science Notes",-"ESOAR European Southern Observatory Annual Reports",-"ESOB. European Southern Observatory ESO Bulletin",-"ESOSP European Southern Observatory Scientific Preprints",-"ESOSR European Southern Observatory Scientific Report",-"ETTRT European Transactions Telecommunications Related Technologies",-"ERST. Europe Report Science Technology",-"EL... Europhysics Letters",-"ENews Europhysics News",-"EXOSA EXOSAT Express",-"ExA.. Experimental Astronomy",-"EEyeR Experimental Eye Research",-"ExHT. Experimental Heat Transfer",-"ExM.. Experimental Mechanics",-"ExMPS Experimental Methods in the Physical Sciences",-"ExT.. Experimental Techniques",-"ExTFS Experimental Thermal Fluid Science",-"ExFl. Experiments in Fluids",-"ExG.. Exploration Geophysics",-"Extr. Extraction",-"PMtv. Facultad de Humanidades y Ciencias Universidad de la Republica Montevideo",-"FaDi. Faraday Discussions",-"FaTr. Faraday Transactions",-"FFEMS Fatigue and Fracture of Engineering Materials and Structures",-"FerNo Fermilab Note",-"Fer.. Ferroelectrics",-"FerLS Ferroelectrics Letters Section",-"FBS.. Few-Body Systems",-"FiIO. Fiber and Integrated Optics",-"Filom Filomat",-"FeMik Finommechanika Mikrotechnika",-"FiBr. First Break",-"FizEl Fizicheskaia Elektronika",-"FiMek Fizicheskaia Mekhanika",-"Fiz.. Fizika",-"FizA. Fizika A",-"FizAS Fizika Aerodispersnykh Sistem",-"FizB. Fizika B",-"FizGV Fizika Goreniia i Vzryva",-"FizKO Fizika i Khimiia Obrabotki Materialov",-"FizTV Fizika i Tekhnika Vysokikh Davlenii",-"FizMM Fizika Metallov i Metallovedenie",-"FizMS Fizika Mnogochastichnykh Sistem",-"FizNT Fizika Nizkikh Temperatur",-"FizPl Fizika Plazmy",-"FizSz Fizika Sz.",-"FizTT Fizika Tverdogo Tela",-"FizZS Fizika Zhidkogo Sostoianiia",-"FizAt Fiziki Atmosfery",-"FizKM Fiziko Khimicheskaia Mekhanika Materialov",-"FizCh Fizyki i Chemii Seria Fizyka",-"FliIn Flight International",-"FNL.. Fluctuation and Noise Letters",-"FRFI. Flug Revue Flugwelt International",-"FlDy. Fluid Dynamics",-"FlDyR Fluid Dynamics Research",-"FlDyT Fluid Dynamics Transactions",-"Fluid Fluidika",-"FMAG. Fluid Mechanics of Astrophysics and Geophysics",-"FlMSR Fluid Mechanics Soviet Research",-"FluQ. Fluids Quarterly",-"FBP.. Food and Bioproducts Processing. Part C, Transactions of the Institution of Chemical Engineers",-"ForPh Fortschritte der Physik",-"FoGeo Fotointerpretacja w Geografii",-"FoPh. Foundations of Physics",-"FoPhL Foundations of Physics Letters",-"Fract Fractals",-"Freq. Frequenz",-"FrES. Frontiers of Earth Science",-"FrMS. Frontiers of Materials Science",-"FrME. Frontiers of Mechanical Engineering",-"FrPhy Frontiers of Physics",-"FrPhC Frontiers of Physics in China",-"IzFru Frunze Izdatel Ilim",-"FSTJ. Fujitsu Scientific Technical Journal",-"FST.. Fullerene Science and Technology",-"FAAp. Functional Analysis and Its Applications",-"FML.. Functional Materials Letters",-"FACM. Functiones et Approximatio Commentarii Mathematici",-"FInfo Fundamenta Informaticae",-"FANP. Fundamental and Applied Nuclear Physics Series",-"OOPS. Fundamental nye Osnovy Opticheskoi Pamiati i Sredy",-"FCPh. Fundamentals of Cosmic Physics",-"FTP.. Fundamental Theories of Physics",-"Futur Future Spring",-"GCNew Galactic Center Newsletter",-"galxp GALEX Proposal",-"GalEl Galilean Electrodynamics",-"GEB.. Games and Economic Behavior",-"GGMit Gauss-Gesellschaft e.V. Göttingen, Mitteilungen",-"GVPOO Gauthier-Villars Paris Observatory Observations",-"GazA. Gazette Astronomique",-"GazAM Gazette Astronomique Memoires",-"GazT. Gazodinamika i Teploobmen",-"GCNR. GCN Report",-"GECJR GEC Journal Research",-"Gelio Geliotekhnika",-"Gemin GEMINI Newsletter Royal Greenwich Observatory",-"GHA.. General History of Astronomy",-"GPB.. General Physiology and Biophysics",-"GReGr General Relativity and Gravitation",-"Gen.. Genetica",-"GeoIn Geocarto International",-"GeocJ Geochemical Journal",-"Geoch Geochemistry",-"GGG.. Geochemistry, Geophysics, Geosystems",-"GeocI Geochemistry International",-"GeCoA Geochimica et Cosmochimica Acta",-"GeCAS Geochimica et Cosmochimica Acta Supplement",-"GeCar Geodesy and Cartography",-"GeAer Geodeziia i Aerofotos",-"GeKar Geodeziia i Kartografiia",-"GKA.. Geodeziia i Kartografiia Aehrofotosemka, L'vov",-"GeKaA Geodeziia Kartografiia i Aerofotos",-"GeoK. Geodezja i Kartografia",-"GeoAc Geodinamica Acta",-"GeofI Geofisica Internacional",-"GeoPA Geofisica Pura e Applicata",-"GeoSb Geofizicheskii Sbornik",-"GeoZh Geofizicheskii Zhurnal",-"GeoAA Geografiska Annaler, Series A: Physical Geography",-"GeoAB Geografiska Annaler, Series B: Human Geography",-"GeIss Geoinformation Issues",-"Geokh Geokhimiia",-"GCarp Geologica Carpathica",-"GeolJ Geological Journal",-"GeoM. Geological Magazine",-"GeoSJ Geological Society Journal",-"GSAMB Geological Society of America Bulletin",-"GSAMm Geological Society of America Memoir",-"GSASP Geological Society of America Special Papers",-"GSLSP Geological Society of London Special Publications",-"Geolo Geologija",-"GeoRu Geologische Rundschau",-"Geolg Geologos",-"Geo.. Geology",-"GeoOD Geology of Ore Deposits",-"GeoIs Geomagnitnye Issledovaniia",-"GML.. Geo-Marine Letters",-"GeoD. Geometriae Dedicata",-"GeomJ Geomicrobiology Journal",-"Geomo Geomorphology",-"Geoph Geophysica",-"GeGe. Geophysica et Geodaetica",-"GApFD Geophysical and Astrophysical Fluid Dynamics",-"GDS.. Geophysical Developments Series",-"GeoJ. Geophysical Journal",-"GeoJI Geophysical Journal International",-"GeopP Geophysical Prospecting",-"GeopR Geophysical References",-"GeoRL Geophysical Research Letters",-"GeoSu Geophysical Surveys",-"GeoNr Geophysica Norvegica",-"Geop. Geophysics",-"GAM.. Geophysics and Astrophysics Monographs",-"GeoOM Georgetown Observatory Monogram",-"GeoRe Georgetown Observatory Reprints",-"GMD.. Geoscientific Model Development",-"GMDD. Geoscientific Model Development Discussions",-"GEOCE GEOS Circular on Eclipsing Binaries",-"GEOCR GEOS Circular on RR Lyr Type Variables",-"GEOCA GEOS Circular on Small-Amplitude Variables",-"GEOSN GEOS Note Circulaire",-"Geote Geotectonics",-"TrGRC Geothermal Resources Council Transactions",-"Geoth Geothermics",-"Geot. Geotimes",-"Gerb. Gerbertvs, International Academic Publication on History of Medieval Science",-"GBzG. Gerlands Beitraege zur Geophysik",-"GUL.. Geschichte und Lichtwechsel der Veraenderlichen Sterne (Potsdam)",-"GATAN Gesellschaft Aerosolforschung Tagung ueber Aerosole Naturwissenschaft Medizin und Technik Messtechnik und technische Anwendung",-"GMMWJ Gesellschaft angewandte Mathematik und Mechanik Jahrestagung Goettingen West Germany Zeitschrift Flugwissenschaften",-"GaMuM Gesellschaft Angewandte Mathematik und Mechanik Workshop Paris France",-"GMuD. Gesellschaft Mathematik und Datenverarbeitung mbH Multigrid Methods Special Topics Applications",-"GVMK. Gibridnye Vychislitel nye Mashiny i Kompleksy",-"Gidro Gidromekhanika",-"GiGi. Gidroprivod i Gidropnevmoavtomatika",-"GiSan Gigiena i Sanitariia",-"GTPZ. Gigiena Truda i Professional nye Zabolevaniia",-"GAst. Giornale di Astronomia",-"GlMaJ Glasgow Mathematical Journal",-"GPC.. Global and Planetary Change",-"GBioC Global Biogeochemical Cycles",-"GLORe Goethe Link Observatory Reprints",-"GPSW. GPS World",-"GMIP. Graphical Models and Image Processing",-"GrCo. Gravitation and Cosmology",-"GrCoS Gravitation and Cosmology Supplement",-"GrTOn Gravitatsiia i Teoriia Otnositel nosti",-"GCN.. GRB Coordinates Network",-"GGMM. Greenhouse Gas Measurement &",-"GriO. Griffith Observer",-"GrAeH Grumman Aerospace Horizons",-"Grund Grundwasser",-"GICi. Gruppo Italiano RV Tauri Circolare",-"HalRe Hale Observatories Reprints",-"HadJ. Hadronic Journal",-"HadJS Hadronic Journal Supplement",-"BSD.. Hamburger Sternwarte Bergedorf",-"HamS. Hamburger Sternwarte Sonderdrucke",-"LS... Hamburger Sternw. Warner &",-"HAAG. Handbook of Astronomy Astrophysics and Geophysics",-"HBP.. Handbook of Biological Physics",-"HGE.. Handbook of Geophysical Exploration",-"HPlPh Handbook of Plasma Physics",-"HPCRE Handbook on the Physics and Chemistry of Rare Earths",-"HDA.. Handbuch der Astrophysik",-"HDP.. Handbuch der Physik",-"HarZi Harthaer Beobachtungs-Zirkular",-"HarAC Harvard College Observatory Announcement Card",-"HarAR Harvard College Observatory Annual Report",-"BHarO Harvard College Observatory Bulletin",-"HarCi Harvard College Observatory Circular",-"HarPa Harvard College Observatory Papers",-"HarRe Harvard College Observatory Reprints",-"HarMi Harvard Observatory Mimeograms",-"HarMo Harvard Observatory Monographs",-"HeaPh Health Physics",-"HMT.. Heat and Mass Transfer",-"HTrEn Heat Transfer Engineering",-"HTJR. Heat Transfer Japanese Research",-"HTSR. Heat Transfer Soviet Research",-"Heavn Heavens",-"HWM.. Helgoländer Wissenschaftliche Meeresuntersuchungen",-"HMR.. Helgoland Marine Research",-"AcHCh Helvetica Chimica Acta",-"AcHPh Helvetica Physica Acta",-"AcHPS Helvetica Physica Acta Supplementum",-"HelOB Helwan Institute of Astronomy and Geophysics Bulletins",-"HemD. Hemel en Dampkring",-"HECh. High Energy Chemistry",-"HEDP. High Energy Density Physics",-"HEPNP High Energy Physics and Nuclear Physics",-"HiA.. Highlights of Astronomy",-"HPP.. High Performance Polymers",-"HPR.. High Pressure Research",-"HiTec High Technology",-"HTHP. High Temperatures and High Pressures",-"HTemS High Temperature Science",-"HARSB Histoire de l'Academie Royale des Sciences et des Belles-Lettres de Berlin",-"HSPBS Historical Studies in the Physical and Biological Sciences",-"HGeo. History of Geophysics",-"HGSS. History of Geo- and Space Sciences",-"HisSc History of Science",-"HUFEB Hokkaido University Faculty Engineering Bulletin",-"HUFEM Hokkaido University Faculty Engineering Memoirs",-"Holz. Holzforschung",-"HBB.. Horizons in Biochemistry and Biophysics",-"HWP.. Horizons in World Physics",-"HCHy. Hovering Craft and Hydrofoil",-"HGT.. Human Gene Therapy",-"HvaOB Hvar Observatory Bulletin",-"HvOBS Hvar Observatory Bulletin Supplement",-"HyBio Hydrobiologia",-"HydJ. Hydrogeology Journal",-"HyPr. Hydrological Processes",-"HESS. Hydrology and Earth System Sciences",-"HESSD Hydrology and Earth System Sciences Discussions",-"HyInt Hyperfine Interactions",-"IadEn Iadernaia Energiia",-"IAGBu IAGA Bulletin",-"IaIaF Iakutsk Iakutskii Filial SO AN SSSR",-"BSEEA Iasi Institutul Politehnic Buletinul Sectia Electrotehnica Electronica Automatizari",-"BSMMT Iasi Institutul Politehnic Buletinul Sectia Matematica Mecanica Teoretica Fizica",-"BSMT. Iasi Institutul Politehnic Buletinul Sectia Mecanica Tehnica",-"IAUCB IAU Commission on Close Binary Stars",-"IAUDS IAU Commission on Double Stars",-"IAUIn IAU Commission on Instruments",-"IAUGA IAU General Assembly",-"IAUIB IAU Information Bulletin",-"IAUSS IAU Special Session",-"WFINw IAU Working Group on Wide-Field Imaging, Newsletter",-"IBMJ. IBM Journal of Research and Development",-"ICAOB ICAO Bulletin",-"Icar. Icarus",-"IAESM IEEE Aerospace Electronic Systems Magazine",-"IAWPL IEEE Antennas and Wireless Propagation Letters",-"IAPM. IEEE Antennas Propagation Magazine",-"IASSP IEEE ASSP Magazine",-"ICiSM IEEE Circuits Systems Magazine",-"IComM IEEE Communications Magazine",-"ICSEn IEEE Computational Science and Engineering",-"ICGA. IEEE Computer Graphics Applications",-"ICSM. IEEE Computer Systems Magazine",-"IDTC. IEEE Design Test Computers",-"IEDL. IEEE Electron Device Letters",-"IExp. IEEE Expert",-"IGRSL IEEE Geoscience and Remote Sensing Letters",-"IISys IEEE Intelligent Systems",-"IJOE. IEEE Journal of Oceanic Engineering",-"IJQE. IEEE Journal of Quantum Electronics",-"IJRA. IEEE Journal of Robotics Automation",-"ISTSP IEEE Journal of Selected Topics in Signal Processing",-"IJSSC IEEE Journal of Solid-State Circuits",-"IJSAC IEEE Journal on Selected Areas in Communications",-"ILCSM IEEE LCS Magazine",-"ILTS. IEEE LTS",-"IMGWL IEEE Microwave and Guided Wave Letters",-"IMMag IEEE Microwave Magazine",-"IEEEN IEEE Network",-"IPTL. IEEE Photonics Technology Letters",-"IEEEP IEEE Proceedings",-"ISPL. IEEE Signal Processing Letters",-"ISPM. IEEE Signal Processing Magazine",-"IEEES IEEE Spectrum",-"ISysJ IEEE Systems Journal",-"ITASS IEEE Transactions on Acoustics Speech and Signal Processing",-"ITAES IEEE Transactions on Aerospace Electronic Systems",-"ITAP. IEEE Transactions on Antennas and Propagation",-"ITAS. IEEE Transactions on Applied Superconductivity",-"ITAC. IEEE Transactions on Automatic Control",-"ITBE. IEEE Transactions on Biomedical Engineering",-"ITB.. IEEE Transactions on Broadcasting",-"ITCS. IEEE Transactions on Circuits Systems",-"ITCom IEEE Transactions on Communications",-"ITCHM IEEE Transactions on Components Hybrids and Manufacturing Technology",-"ITCAD IEEE Transactions on Computer Aided Design",-"ITCmp IEEE Transactions on Computers",-"ITDEI IEEE Transactions on Dielectrics and Electrical Insulation",-"ITEdu IEEE Transactions on Education",-"ITEI. IEEE Transactions on Electrical Insulation",-"ITElC IEEE Transactions on Electromagnetic Compatibility",-"ITED. IEEE Transactions on Electron Devices",-"ITEnC IEEE Transactions on Energy Conversion",-"ITEM. IEEE Transactions on Engineering Management",-"ITGRS IEEE Transactions on Geoscience and Remote Sensing",-"ITGE. IEEE Transactions on Geoscience Electronics",-"ITIP. IEEE Transactions on Image Processing",-"ITIE. IEEE Transactions on Industrial Electronics",-"ITIEC IEEE Transactions on Industrial Electronics and Control Instrumentation",-"ITIA. IEEE Transactions on Industry Applications",-"ITIT. IEEE Transactions on Information Theory",-"ITIM. IEEE Transactions on Instrumentation Measurement",-"ITM.. IEEE Transactions on Magnetics",-"ITMI. IEEE Transactions on Medical Imaging",-"ITMTT IEEE Transactions on Microwave Theory Techniques",-"ITME. IEEE Transactions on Military Electronics",-"ITNan IEEE Transactions on Nanotechnology",-"ITNN. IEEE Transactions on Neural Networks",-"ITNS. IEEE Transactions on Nuclear Science",-"ITPHP IEEE Transactions on Parts Hybrids and Packaging",-"ITPAM IEEE Transactions on Pattern Analysis and Machine Intelligence",-"ITPS. IEEE Transactions on Plasma Science",-"ITPAS IEEE Transactions on Power Apparatus Systems",-"ITPD. IEEE Transactions on Power Delivery",-"ITPE. IEEE Transactions on Power Electronics",-"ITR.. IEEE Transactions on Reliability",-"ITRA. IEEE Transactions on Robotics Automation",-"ITSTQ IEEE Transactions on Selected Topics in Quantum Electronics",-"ITSM. IEEE Transactions on Semiconduct M",-"ITSP. IEEE Transactions on Signal Processing",-"ITSE. IEEE Transactions on Software Engineering",-"ITSU. IEEE Transactions on Sonics Ultrasonics",-"ITSMC IEEE Transactions on Systems Man and Cybernetics",-"ITUFF IEEE Transactions on Ultrasonics Ferroelectrics and Frequency Control",-"ITVT. IEEE Transactions on Vehicular Technology",-"JMOA. IEE Journal of Microwaves Optics and Acoustics",-"JSSED IEE Journal of Solid-State Electron Devices",-"ITEIS IEEJ Transactions on Electronics, Information and Systems",-"IJTFM IEEJ Transactions on Fundamentals and Materials",-"IJTIA IEEJ Transactions on Industry Applications",-"IJTPE IEEJ Transactions on Power and Energy",-"IJTSM IEEJ Transactions on Sensors and Micromachines",-"IPEPA IEE Proceedings B: Electric Power Applications",-"IPGTD IEE Proceedings C: Generation Transmission Distribution",-"IPCSV IEE Proceedings: Communications Speech and Vision",-"IPCTA IEE Proceedings D: Control Theory Applications",-"IPCDT IEE Proceedings E: Computers and Digital Techniques",-"IPCRS IEE Proceedings F: Communications Radar and Signal Processing",-"IPRSP IEE Proceedings F: Radar and Signal Processing",-"IPMAP IEE Proceedings H: Microwaves Antennas and Propagation",-"IPMOA IEE Proceedings H: Microwaves Optics and Antennas",-"IPOpt IEE Proceedings J: Optoelectronics",-"IPPSM IEE Proceedings: Physical Science Measurement and Instrumentation Management and Education Reviews",-"IPSSE IEE Proceedings: Solid-State Electron Devices",-"IEERv IEE Reviews",-"IEIEE IEICE Electronics Express",-"ESSFR IEICE ESS Fundamentals Review",-"IEITC IEICE Transactions on Communications",-"IEITE IEICE Transactions on Electronics",-"IEITF IEICE Transactions on Fundamentals of Electronics Communications and Computer Sciences",-"IEITI IEICE Transactions on Information and Systems",-"ITN.. IERS Technical Note",-"IESJ. IES Journal",-"IHWN. IHW Newsletter",-"JApMa IMA Journal of Applied Mathematics",-"IJNA. IMA Journal of Numerical Analysis",-"IVMA. IMA Volumes in Mathematics and its Applications",-"IMEPA IME Proceedings. Part A: Journal of Power and Energy",-"IMEPB IME Proceedings. Part B: Journal of Engineering Manufacture",-"IMEPC IME Proceedings. Part C: Journal of Mechanical Engineering Science",-"IMEPD IME Proceedings. Part D: Journal of Automobile Engineering",-"IMEPE IME Proceedings. Part E: Journal of Process Mechanical Engineering",-"IMEPG IME Proceedings. Part G: Journal of Aerospace Engineering",-"IMEPH IME Proceedings. Part H: Journal of Engineering in Medicine",-"IMEPI IME Proceedings. Part I: Journal of Systems and Control Engineering",-"IMEPK IME Proceedings. Part K: Journal of Multibody Dynamics",-"ICSE. Impact of Computing in Science and Engineering",-"InEPS Indian Academy of Sciences Proceedings: Earth and Planetary Sciences",-"InMS. Indian Academy of Sciences Proceedings Mathematical Sciences",-"InASP Indian Academy of Sciences Proceedings Section",-"InES. Indian Academy of Sciences Proceedings: Section C Engineering Sciences",-"IUMJ. Indiana University Mathematics Journal",-"IIApN Indian Institute of Astrophysics Newsletter",-"InISJ Indian Institute of Science Journal",-"InISA Indian Institute of Science Journal of Aeronomical Society of India",-"ITJSE Indian Institute of Technology Journal on Section Engineering Technology",-"InJAE Indian Journal of Aerospace Engineering Division",-"InJBB Indian Journal of Biochemistry and Biophysics",-"InJET Indian Journal of Electronics Telecommunication Engineering Division",-"InJME Indian Journal of Mechanical Engineering Division",-"IJMHG Indian Journal of Meteorology Hydrology and Geophysics",-"InJPh Indian Journal of Physics",-"InJP. Indian Journal of Physics and Proceedings of the Indian Assocatiation for the Cultivation of Science",-"InJPA Indian Journal of Physics Section A",-"InJPB Indian Journal of Physics Section B",-"IJPAM Indian Journal of Pure and Applied Mathematics",-"IJPAP Indian Journal of Pure and Applied Physics",-"IJRSP Indian Journal of Radio and Space Physics",-"InJHS Indian Journal of the History of Science",-"InJTP Indian Journal of Theoretical Physics",-"INSAP Indian National Science Academy Proceedings Supplement",-"IDAQP Infinite Dimensional Analysis, Quantum Probability and Related Topics",-"IBSH. Informational Bulletin of the Southern Hemisphere",-"IBUAA Informational Bulletin of the Ukrainian Astronomical Association",-"InCo. Information and Computation",-"IBVS. Information Bulletin on Variable Stars",-"InfCo Information Control",-"InfD. Information Display",-"IPM.. Information Processing and Management",-"IPL.. Information Processing Letters",-"ISNL. Information Systems Newsletter",-"IRA.. Infrared Astronomy",-"InfPh Infrared Physics",-"InPhT Infrared Physics and Technology",-"Ingeg Ingegneria",-"IngAr Ingenieur Archiv",-"InCh. Inorganic Chemistry",-"IAL1K Institut d'Astronomie de Lausanne",-"IMA.. Institute for Mathematics and Its Applications",-"InFuJ Institute Fuel Journal",-"JIECE Institute of Electronics Communication Engineers of Japan Transactions Section E English",-"IPASA Institute of Physics Academia Sinica Annual Report",-"ISASS Institute of Space and Astronautical Science Report",-"ITABO Institute of Theoretical Astrophysics, Blindern-Oslo",-"OslR. Institute of Theoretical Astrophysics Blindern Oslo Reports",-"IEAEE Institution Engineers Australia Electrical Engineering Transactions",-"IEEP. Institution of Electrical Engineers Proceedings",-"IEREJ Institution of Electronic Radio Engineers Journal",-"IETE. Institution of Electronics Telecommunication Engineers",-"IAFET Instituto de Astronomia y Fisica del Espacio Buenos Aires",-"MerRe Instituto Venezolano de Astronomia Merida Venezuela",-"IRMBP Institut Royal Meteorologique de Belgique Publications Serie",-"ITAB. Institut Teoreticheskoi Astronomii Byulleten",-"TrITA Institut Teoreticheskoi Astronomii Trudy",-"IET.. Instruments and Experimental Techniques",-"InLoP Instytut Lotnictwa Prace",-"InMPP Instytut Maszyn Przeplywowych Prace",-"IntaC Inta Conie",-"ITSF. Integral Transforms and Special Functions",-"ICAE. Integrated Computer-Aided Engineering",-"InFer Integrated Ferroelectrics",-"Inter Interavia",-"IntSM Interavia Space Markets",-"ISRv. Interdisciplinary Science Reviews",-"IFB.. Interfaces and Free Boundaries",-"IPAUC INTERKOSMOS Prague Astronomicky Ustav Ceskoslovenske Akademie Ved",-"IANT. International Advances in Nondestructive Testing",-"IntAg International Agrophysics",-"IAPPP International Amateur-Professional Photoelectric Photometry Communications",-"IAM.. International Applied Mechanics",-"IAUC. International Astronomical Union Circular",-"ICQ.. International Comet Quarterly",-"ICHMT International Communications in Heat and Mass Transfer",-"IrPH. International Conference Infrared Physics Zurich Switzerland",-"ICML. International Conference on Machine Learning",-"IER.. Internationale Elektronische Rundschau",-"InGeo International Geophysics Series",-"IJCEM International Journal for Computational Methods in Engineering Science and Mechanics",-"IJNAM International Journal for Numerical and Analytical Methods in Geomechanics",-"IJNME International Journal for Numerical Methods in Engineering",-"IJNMF International Journal for Numerical Methods in Fluids",-"IJRPC International Journal for Radiation Physics and Chemistry",-"IJACS International Journal of Adaptive Control and Signal Processing",-"IJAdA International Journal of Adhesion Adhesives",-"IJASS International Journal of Aeronautical and Space Sciences",-"IJAEM International Journal of Analytical and Experimental Modal Analysis",-"IJAEO International Journal of Applied Earth Observation and Geoinformation",-"IJApE International Journal of Electromagnetics and Mechanics",-"IJAIS International Journal of Applied Information Systems",-"IJAM. International Journal of Applied Mechanics",-"IJAsB International Journal of Astrobiology",-"IJAA. International Journal of Astronomy and Astrophysics",-"IJAP. International Journal of Aviation Psychology",-"IJBC. International Journal of Bifurcation and Chaos",-"IJBB. International Journal of Bioclimatology Biometeorology",-"IJBm. International Journal of Biometeorology",-"IJCli International Journal of Climatology",-"IJCES International Journal of Computational Engineering Science",-"IJCFD International Journal of Computational Fluid Dynamics",-"IJCMS International Journal of Computational Materials Science and Engineering",-"IJCA. International Journal of Computer Applications",-"IJCAT International Journal of Computer Applications and Technology",-"IJCMB International Journal of Computer Mathematics Section B",-"IJCV. International Journal of Computer Vision",-"IJC.. International Journal of Control",-"IJDM. International Journal of Damage Mechanics",-"IJDE. International Journal of Digital Earth",-"IJDF. International Journal of Dynamics of Fluids",-"IJEaS International Journal of Earth Sciences",-"IJE.. International Journal of Electronics",-"IJER. International Journal of Energy Research",-"IJEFM International Journal of Engineering and Fluid Mechanics Spring",-"IJES. International Journal of Engineering Science",-"IJFa. International Journal of Fatigue",-"IJFD. International Journal of Fluid Dynamics",-"IJFr. International Journal of Fracture",-"IJFE. International Journal of Fusion Energy",-"IJGS. International Journal of General Systems",-"IJGA. International Journal of Geomagnetism and Aeronomy",-"IJGMM International Journal of Geometric Methods in Modern Physics",-"IJGeo International Journal of Geophysics",-"IJGNP International Journal of Green Nanotechnology Physics and Chemistry",-"IJHFF International Journal of Heat and Fluid Flow",-"IJHMT International Journal of Heat and Mass Transfer",-"IJHSC International Journal of High Speed Computing",-"IJHSE International Journal of High Speed Electronics and Systems",-"IJHM. International Journal of Hybrid Microelectronics Fall",-"IJHE. International Journal of Hydrogen Energy",-"IJHy. International Journal of Hyperthermia",-"IJIDF International Journal of Image and Data Fusion",-"IJIG. International Journal of Image and Graphics",-"IJIST International Journal of Imaging Systems Technology",-"IJIE. International Journal of Impact Engineering",-"IJIMW International Journal of Infrared and Millimeter Waves",-"IJICS International Journal of Intelligent Control and Systems",-"IJMSE International Journal of Mars Science and Exploration",-"IJMSp International Journal of Mass Spectrometry",-"IJMSI International Journal of Mass Spectrometry and Ion Processes",-"IJMES International Journal of Mathematical Education in Science and Technology",-"IJM.. International Journal of Mathematics",-"IJMS. International Journal of Mechanical Sciences",-"IJMW. International Journal of Mine Water",-"IJMM. International Journal of Mini Microcomputers",-"IJMoS International Journal of Modelling and Simulation",-"IJMPA International Journal of Modern Physics A",-"IJMPB International Journal of Modern Physics B",-"IJMPC International Journal of Modern Physics C",-"IJMPS International Journal of Modern Physics Conference Series",-"IJMPD International Journal of Modern Physics D",-"IJMPE International Journal of Modern Physics E",-"IJMF. International Journal of Multiphase Flow",-"IJN.. International Journal of Nanoscience",-"IJNT. International Journal of Nanotechnology",-"IJNS. International Journal of Neural Systems",-"IJNLM International Journal of Non Linear Mechanics",-"IJNOP International Journal of Nonlinear Optical Physics",-"IJNMH International Journal of Numerical Methods for Heat &",-"IJOpt International Journal of Optics",-"IJOMS International Journal of Oral and Maxillofacial Surgery",-"IJPRS International Journal of Photogrammetry and Remote Sensing",-"IJPES International Journal of Physical and Engineering Sciences",-"IJP.. International Journal of Plasticity",-"IJPM. International Journal of Polymeric Materials",-"IJPG. International Journal of Population Geography",-"IJPR. International Journal of Production Research",-"IJQC. International Journal of Quantum Chemistry",-"IJRAI International Journal of Radiation Applications and Instrumentation D Nuclear Tracks and Radiation Measurements",-"IJRB. International Journal of Radiation Biology",-"IJRQS International Journal of Reliability, Quality and Safety Engineering",-"IJRS. International Journal of Remote Sensing",-"IJRR. International Journal of Robotics Research",-"IJSC. International Journal of Satellite Communications",-"IJSME International Journal of Science and Mathematics Education",-"IJSEd International Journal of Science Education",-"IJSE. International Journal of Solar Energy",-"IJSS. International Journal of Solids and Structures",-"IJSSD International Journal of Structural Stability and Dynamics",-"IJScA International Journal of Supercomputer Applications",-"IJSyS International Journal of Systems Science",-"IJTP. International Journal of Theoretical Physics",-"IJT.. International Journal of Thermophysics",-"IJTJE International Journal of Turbo Jet Engines",-"IMRv. International Materials Reviews",-"IMeRv International Metals Reviews",-"IREdu International Review of Education",-"IRH.. International Review of Hydrobiology",-"IRNP. International Review of Nuclear Physics",-"IRPC. International Reviews in Physical Chemistry",-"ISBRv International Space Business Review",-"IUGG. International Union of Geodesy and Geophysics General Assembly",-"IPNPR Interplanetary Network Progress Report",-"IMPA. Interscience Monographs in Physics and Astronomy",-"ITPA. Interscience Tracts on Physics and Astronomy",-"InMat Inventiones Mathematicae",-"InvPr Inverse Problems",-"IGeo. Investigations in Geophysics",-"InFiZ Inzhenerno Fizicheskii Zhurnal",-"IonIs Ionosfernye Issledovaniia",-"Iono. Ionosphere",-"Ippa. Ipparchos",-"IrJST Iranian Journal of Science Technology",-"IRETE IRE Transactions on Education",-"IrAJ. Irish Astronomical Journal",-"IrAJS Irish Astronomical Journal Supplement",-"ISAP. ISA Proceedings",-"ISAT. ISA Transactions",-"IHERv Ishikawajima Harima Engineering Review",-"Isis. Isis. Journal of the History of Science Society",-"IPBS. Isotopes in the Physical and Biomedical Sciences",-"IsJT. Israel Journal of Technology",-"IsSRT Israel Space Research and Technology Information Bulletin",-"ISRAA ISRN Astronomy and Astrophysics",-"ISCJS ISRO Satellite Centre Journal of Spacecraft Technology",-"ISSIR ISSI Scientific Reports Series",-"ISSIR ISSI Scientific Reports Series",-"IssZK Issledovanie Zemli Fiz Kosmosa",-"IGAFS Issledovaniia Geomagnetizmu Aeronomii i Fizike Solntsa",-"IsMTD Issledovaniia Mekhanike i Teploobmenu Dvukhfaznykh Sred",-"IssUP Issledovaniia Uprugosti i Plastichnosti",-"ISKZ. Issledovaniya Solntsa i Krasnykh Zvezd",-"IST.. Issues in Science and Technology",-"IsJAP Istanbul University Faculty of Science Journal of Astronomy Physics",-"IsRvC Istanbul University Faculty Science Review Serie C",-"IINA. Istituto Italiano di Navigazione Atti",-"IAIss Istoriko-Astronomicheskie Issledovaniya",-"ITCJ. ITC Journal",-"INTSA Itogi Nauki i Tekhniki Seriia Astronomiia",-"INTSF Itogi Nauki i Tekhniki Seriia Fizika Plazmy",-"INTSI Itogi Nauki i Tekhniki Seriia Issledovanie Kosmicheskogo Prostranstva",-"INTMK Itogi Nauki i Tekhniki Seriia Meteorologiia i Klimatologiia",-"INTSO Itogi Nauki i Tekhniki Seriia Okeanologiia",-"INTSR Itogi Nauki i Tekhniki Seriia Radiotekhnika",-"INTSS Itogi Nauki i Tekhniki Seriia Sovremennye Problemy Matematiki",-"INTSV Itogi Nauki i Tekhniki Seriia Vozdushnyi Transport",-"ITUTJ ITU Telecommunication Journal",-"IUEEN IUE ESA Newsletter",-"IUENN IUE NASA Newsletter",-"IzTad Izvestiia Akademiia Nauk TadzhSSR",-"IzSF. Izvestiia Akademii Nauk Seriya Fizicheskaya",-"IzGla Izvestiia Glavnoi rossiiskoi astronomicheskoi observatorii",-"IzVGA Izvestiia vuzov. Geodeziia Aehrofotosemka",-"IzVF. Izvestiia Vysshaia Uchebn. Zaved., Fizika",-"IzVUZ Izvestiia Vysshaia Uchebn. Zaved., Radiofizika",-"IzAsh Izvestiya Akademii Nauk Turkmenskoj SSR Ashkhabad",-"IzArm Izvestiya Akademiya Nauk Armyanskoi",-"IzAlm Izvestiya Astrofizicheskogo Instituta Alma-Ata",-"IzEhn Izvestiya Astronomicheskoj Engel'gardt obskoj Observatorii Kazan",-"IzAOP Izvestiya Atmospheric and Oceanic Physics",-"IzKie Izvestiya Glavnoj Astronomicheskoj Observatorii Kiev",-"IzPul Izvestiya Glavnoj Astronomicheskoj Observatorii v Pulkove",-"IzMat Izvestiya: Mathematics",-"IzAne Izvestiya na Fizicheskiya Institut s Aneb",-"IzKry Izvestiya Ordena Trudovogo Krasnogo Znameni Krymskoj Astrofizicheskoj Observatorii",-"IzPSE Izvestiya Physics of the Solid Earth",-"IzAvT Izvestiya VUZ Aviatsionnaya Tekhnika",-"IzRad Izvestiya VUZ Radiofizika",-"IzNic Izviestiia Nikolaevskoi glavnoi astronomicheskoi observatorii",-"JWUDF Jahns Wöchentliche Unterhaltungen Für Dilettanten und Freunde der Astronomie, Georgraphie und Witterungskunde",-"JRE.. Jahrbuch der Radioaktivität und Elektronik",-"JASAC Japan Astronomical Study Association Circulars",-"JaJAP Japanese Journal of Applied Physics",-"JJAPL Japanese Journal of Applied Physics Letters B",-"JJAPR Japanese Journal of Applied Physics Regular Papers Short Notes and Review Papers",-"JJAPS Japanese Journal of Applied Physics Supplement",-"JaJAG Japanese Journal of Astronomy and Geophysics",-"JMMPS Japanese Magazine of Mineralogical and Petrological Sciences",-"JaIMJ Japan Institute of Metals Journal",-"JSASS Japan Society of Aeronautical Space Sciences",-"JSAST Japan Society of Aeronautical Space Sciences Transactions",-"JSAPJ Japan Society of Air Pollution Journal",-"JSCMJ Japan Society of Composite Materials Journal",-"JSLEJ Japan Society of Lubrication Engineers Journal",-"JSMSJ Japan Society of Materials Science Journal",-"JSPS. Japan Society of Promotion Science",-"JSMAJ JASMA Japan Society of Microgravity Application Journal",-"JMeOp Jemna Mechanika Optika",-"JenRu Jenaer Rundschau",-"JenRv Jena Review",-"JBAn. Jodrell Bank Annals",-"JBASP Jodrell Bank Ann Ser Pt",-"JBRe. Jodrell Bank Reprints",-"JHATD Johns Hopkins APL Technical Digest",-"JOM.. JOM - Journal of the Minerals, Metals and Materials Society",-"RSNSW Journal and Proceedings of the Royal Society of New South Wales",-"JAco. Journal d'Acoustique",-"JCP.. Journal de Chimie Physique",-"JCPPC Journal de Chimie Physique et de Physico-Chimie Biologique",-"JMec. Journal de Mecanique",-"JMecA Journal de Mecanique Appliquee",-"JMecT Journal de Mecanique Theorique et Appliquee",-"JMTAS Journal de Mecanique Theorique et Appliquee Supplement",-"JPhys Journal de Physique",-"JPhyC Journal de Physique Colloque",-"JPR.. Journal de Physique et le Radium",-"JPhy1 Journal de Physique I",-"JPhy2 Journal de Physique II",-"JPhy3 Journal de Physique III",-"JPhy4 Journal de Physique IV",-"JPhyL Journal de Physique Lettres",-"JPhTA Journal de Physique Theorique et Apliquee",-"JReAt Journal de Recherches Atmospheriques",-"JAF.. Journal des Astronomes Francais",-"JO... Journal des Observateurs",-"JOp.. Journal d'Optique",-"JTP.. Journal for Technology of Plasticity",-"JHA.. Journal for the History of Astronomy",-"JHAS. Journal for the History of Astronomy Supplement",-"JRAM. Journal fur die reine und angewandte Mathematik",-"JNanU Journal Nanjing Univ",-"JNIRE Journal NIRE",-"JAE.. Journal of Acoustic Emission",-"JAMDS Journal of Advanced Mechanical Design, Systems, and Manufacturing",-"JAMES Journal of Advances in Modeling Earth Systems",-"JAerS Journal of Aerosol Science",-"JAerE Journal of Aerospace Engineering",-"JAerP Journal of Aerospace Power",-"JAfES Journal of African Earth Sciences",-"JAER. Journal of Agricultural Engineering Research",-"JAir. Journal of Aircraft",-"JAlg. Journal of Algebra",-"JAlgC Journal of Algebraic Combinatorics",-"JAlgo Journal of Algorithms",-"JAllC Journal of Alloys and Compounds",-"JACS. Journal of American Ceramic Society",-"JAAS. Journal of Analytical Atomic Spectrometry",-"JApCr Journal of Applied Crystallography",-"JApEl Journal of Applied Electrochemistry",-"JAG.. Journal of Applied Geophysics",-"JApMM Journal of Applied Mathematics and Mechanics",-"JAM.. Journal of Applied Mechanics",-"JAMTP Journal of Applied Mechanics and Technical Physics",-"JApMw Journal of Applied Metalworking",-"JApMe Journal of Applied Meteorology",-"JApMC Journal of Applied Meteorology and Climatology",-"JAPE. Journal of Applied Photographic Engineering",-"JAP.. Journal of Applied Physics",-"JAPh. Journal of Applied Physiology",-"JARS. Journal of Applied Remote Sensing",-"JASE. Journal of Applied Science and Engineering Section on Electrical Power and Information Systems",-"JApSc Journal of Applied Sciences",-"JApSp Journal of Applied Spectroscopy",-"JApS. Journal of Applied Statistics",-"JApT. Journal of Approximation Theory",-"JAESc Journal of Asian Earth Sciences",-"JAD.. Journal of Astronomical Data",-"JAHH. Journal of Astronomical History and Heritage",-"JAI.. Journal of Astronomical Instrumentation",-"JAsPh Journal of Astronomy and Physics (Turkey)",-"JASS. Journal of Astronomy and Space Sciences",-"JApA. Journal of Astrophysics and Astronomy",-"JApAS Journal of Astrophysics and Astronomy Supplement",-"JAtOT Journal of Atmospheric and Oceanic Technology",-"JASTP Journal of Atmospheric and Solar-Terrestrial Physics",-"JATP. Journal of Atmospheric and Terrestrial Physics",-"JAtC. Journal of Atmospheric Chemistry",-"JAtS. Journal of Atmospheric Sciences",-"JAMOP Journal of Atomic, Molecular and Optical Physics",-"JAES. Journal of Audio Engineering Society",-"JAuGG Journal of Australian Geology and Geophysics",-"JAuR. Journal of Automated Reasoning",-"JBall Journal of Ballistics",-"JBBM. Journal of Biochemical and Biophysical Methods",-"JBB.. Journal of Bioenergetics and Biomembranes",-"JBC.. Journal of Biological Chemistry",-"JBP.. Journal of Biological Physics",-"JBiom Journal of Biomechanics",-"JBO.. Journal of Biomedical Optics",-"JBNMR Journal of Biomolecular NMR",-"JBBC. Journal of Biophysical and Biochemical Cytology",-"JBiop Journal of Biophysics",-"JBiBi Journal of Biophysique et Biomecanique",-"JBMN. Journal of Biophysique et Medecine Nucleaire",-"JBMR. Journal of Bone and Mineral Research",-"JBR.. Journal of Breath Research",-"JCat. Journal of Catalysis",-"JChEd Journal of Chemical Education",-"JChPh Journal of Chemical Physics",-"JChS. Journal of Chromatographic Science",-"JCh.. Journal of Chromatography",-"JCSC. Journal of Circuits, Systems and Computers",-"JCli. Journal of Climate",-"JCAM. Journal of Climate and Applied Meteorology",-"JClim Journal of Climatology",-"JCS.. Journal of Clinical Microbiology",-"JClP. Journal of Clinical Pharmacology",-"JCS.. Journal of Cluster Science",-"JCScT Journal of College Science Teaching",-"JCIS. Journal of Colloid and Interface Science",-"JCoSc Journal of Colloid Science",-"JCTA. Journal of Combinatorial Theory, Series A",-"JCTB. Journal of Combinatorial Theory, Series B",-"JCom. Journal of Communications",-"CoNet Journal of Communications and Networks",-"JComp Journal of Complexity",-"JCoMa Journal of Composite Materials",-"JCTR. Journal of Composites and Technology Research",-"JCA.. Journal of Computational Acoustics",-"JTCN. Journal of Computational and Theoretical Nanoscience",-"JCoAM Journal of Computational and Applied Mathematics",-"JCoB. Journal of Computational Biology",-"JCoCh Journal of Computational Chemistry",-"JCM.. Journal of Computational Mathematics",-"JCoN. Journal of Computational Neuroscience",-"JCoPh Journal of Computational Physics",-"JCST. Journal of Computational Science and Technology",-"JCMD. Journal of Computer-Aided Materials Design",-"JCAMD Journal of Computer-Aided Molecular Design",-"JCoSS Journal of Computer and System Sciences",-"JCHyd Journal of Contaminant Hydrology",-"JConP Journal of Contemporary Physics (Armenian Academy of Sciences)",-"JCos. Journal of Cosmology",-"JCAP. Journal of Cosmology and Astro-Particle Physics",-"JCrGr Journal of Crystal Growth",-"JDR.. Journal of Dairy Research",-"JDE.. Journal of Differential Equations",-"JDGeo Journal of Differential Geometry",-"JoDI. Journal of Digital Information",-"JDST. Journal of Dispersion Science and Technology",-"JDisT Journal of Display Technology",-"JDSO. Journal of Double Star Observations",-"JDCS. Journal of Dynamical and Control Systems",-"JDDE. Journal of Dynamics and Differential Equations",-"JESS. Journal of Earth System Science",-"JElas Journal of Elasticity",-"JEEEA Journal of Electrical and Electronics Engineering Australia",-"JEE.. Journal of Electrical Engineering",-"JElec Journal of Electroceramics",-"JEAA. Journal of Electromagnetic Analysis and Application",-"JEWA. Journal of Electromagnetic Waves and Applications",-"JECS. Journal of Electronic Circuits and Systems",-"JEI.. Journal of Electronic Imaging",-"JEMat Journal of Electronic Materials",-"JEPub Journal of Electronic Publishing",-"JECTC Journal of Electronics Cooling and Thermal Control",-"JElM. Journal of Electronics Manufacturing",-"JEMT. Journal of Electron Microscopy Technique",-"JESRP Journal of Electron Spectroscopy and Related Phenomena",-"JESEd Journal of Elementary Science Education",-"JEner Journal of Energy",-"JEAS. Journal of Engineering and Applied Sciences",-"JEnMa Journal of Engineering and Mathematics",-"JEngM Journal of Engineering and Mechanics",-"JETh. Journal of Engineering and Thermophysics",-"JEER. Journal of Engineering Education Research",-"JEP.. Journal of Engineering Physics",-"JEPT. Journal of Engineering Physics and Thermophysics",-"JEngS Journal of Engineering Sciences",-"JEEM. Journal of Environmental and Economics Management",-"JECE. Journal of Environmental Conservation Engineering",-"JEnvS Journal of Environmental Sciences",-"JExB. Journal of Experimental Botany",-"JENan Journal of Experimental Nanoscience",-"JFF.. Journal of Fire Flammability",-"JFC.. Journal of Fluid Control",-"JFM.. Journal of Fluid Mechanics",-"JFS.. Journal of Fluids and Structures",-"JFST. Journal of Fluid Science and Technology",-"JFlu. Journal of Fluorescence",-"JFAA. Journal of Fourier Analysis and Applications",-"JFuA. Journal of Functional Analysis",-"JGeod Journal of Geodesy",-"JGeo. Journal of Geodynamics",-"JGS.. Journal of Geographical Systems",-"JGIS. Journal of Geographic Information System",-"JG... Journal of Geology",-"JGG.. Journal of Geomagnetism and Geoelectricity",-"JGGS. Journal of Geomagnetism and Geoelectricity Supplement",-"JGP.. Journal of Geometry and Physics",-"JGR.. Journal of Geophysical Research",-"JGRD. Journal of Geophysical Research (Atmospheres)",-"JGRG. Journal of Geophysical Research (Biogeosciences)",-"JGRF. Journal of Geophysical Research (Earth Surface)",-"JGRC. Journal of Geophysical Research (Oceans)",-"JGRE. Journal of Geophysical Research (Planets)",-"JGRB. Journal of Geophysical Research (Solid Earth)",-"JGRA. Journal of Geophysical Research (Space Physics)",-"JGRS. Journal of Geophysical Research Supplement",-"JGE.. Journal of Geophysics and Engineering",-"JGZG. Journal of Geophysics Zeitschrift Geophysik",-"JGeEd Journal of Geoscience Education",-"JGlac Journal of Glaciology",-"JGO.. Journal of Global Optimization",-"JGrPh Journal of Gravitational Physics",-"JGHyd Journal of Groundwater Hydrology",-"JGuC. Journal of Guidance Control",-"JGCD. Journal of Guidance Control Dynamics",-"JHeu. Journal of Heuristics",-"JHENP Journal of High Energy and Nuclear Physics",-"JHEP. Journal of High Energy Physics",-"JHEPC Journal of High Energy Physics Conference Proceedings",-"JHSN. Journal of High Speed Networks",-"JHTS. Journal of High Temperature Society",-"JHyd. Journal of Hydrology",-"JHyMe Journal of Hydrometeorology",-"JHyn. Journal of Hydronautics",-"JIST. Journal of Imaging Science and Technology",-"JIPM. Journal of Information Processing and Management",-"JInfo Journal of Informetrics",-"JIMW. Journal of Infrared and Millimeter Waves",-"JInst Journal of Instrumentation",-"JIntS Journal of Integer Sequences",-"JIEq. Journal of Integral Equations",-"JIRS. Journal of Intelligent and Robotic Systems",-"JIMSS Journal of Intelligent Material Systems and Structures",-"JIEx. Journal of Ion Exchange",-"JJAEE Journal of Japan Association for Earthquake Engineering",-"JJAHS Journal of Japanese Association of Hydrological Sciences",-"JJSEE Journal of Japanese Society for Engineering Education",-"JSCSE Journal of Japan Society of Civil Engineers, Ser. A1 (Structural Engineering &",-"JSCAM Journal of Japan Society of Civil Engineers, Ser. A2 (Applied Mechanics (AM))",-"JSCHE Journal of Japan Society of Civil Engineers, Ser. B1 (Hydraulic Engineering)",-"JSCGE Journal of Japan Society of Civil Engineers, Ser. C (Geosphere Engineering)",-"JSCAI Journal of Japan Society of Civil Engineers, Ser. D1 (Architecture of Infrastructure and Environment)",-"JSCHS Journal of Japan Society of Civil Engineers, Ser. D2 (Historical Studies in Civil Engineering)",-"JSCIP Journal of Japan Society of Civil Engineers, Ser. D3 (Infrastructure Planning and Management)",-"JSCPE Journal of Japan Society of Civil Engineers, Ser. E1 (Pavement Engineering)",-"JSCMC Journal of Japan Society of Civil Engineers, Ser. E2 (Materials and Concrete Structures)",-"JSCTE Journal of Japan Society of Civil Engineers, Ser. F1 (Tunnel Engineering)",-"JSCUS Journal of Japan Society of Civil Engineers, Ser. F2 (Underground Space Research)",-"JSCCE Journal of Japan Society of Civil Engineers, Ser. F3 (Civil Engineering Informatics)",-"JSCCM Journal of Japan Society of Civil Engineers, Ser. F4 (Construction and Management)",-"JSCPP Journal of Japan Society of Civil Engineers, Ser. F5 (Professional Practices in Civil Engineering)",-"JSCSP Journal of Japan Society of Civil Engineers, Ser. F6 (Safety Problem)",-"JSCER Journal of Japan Society of Civil Engineers, Ser. G (Environmental Research)",-"JKTR. Journal of Knot Theory and its Ramifications",-"JKAS. Journal of Korean Astronomical Society",-"JKASS Journal of Korean Astronomical Society Supplement",-"JKPS. Journal of Korean Physical Society",-"JLCMe Journal of Laboratory and Clinical Medicine",-"JLasA Journal of Laser Applications",-"JLCM. Journal of Less Common Metals",-"JLVEn Journal of Light &",-"JLwT. Journal of Lightwave Technology",-"JLTP. Journal of Low Temperature Physics",-"JLum. Journal of Luminescence",-"JMSB. Journal of Macromolecular Science, Part B: Physics",-"JMSC. Journal of Macromolecular Science, Part C: Reviews in Macromolecular Chemistry and Physics",-"JMagR Journal of Magnetic Resonance",-"JMMM. Journal of Magnetism and Magnetic Materials",-"JMR.. Journal of Marine Research",-"JMSA. Journal of Marine Science and Application",-"JMS.. Journal of Marine Systems",-"JMarA Journal of Maritime Archaeology",-"JMES. Journal of Materials and Energy Systems",-"JMCh. Journal of Materials Chemistry",-"JMEP. Journal of Materials Engineering and Performance",-"JMPMS Journal of Materials Processing and Manufacturing Science",-"JMatR Journal of Materials Research",-"JMatS Journal of Materials Science",-"JMSME Journal of Materials Science and Materials Electronics",-"JMSL. Journal of Materials Science Letters",-"JMSMM Journal of Materials Science: Materials in Medicine",-"JMSP. Journal of Materials Synthesis and Processing",-"JMAA. Journal of Mathematical Analysis and Applications",-"JMCS. Journal of Mathematical and Computational Science",-"JMPS. Journal of Mathematical and Physical Sciences",-"JMaCh Journal of Mathematical Chemistry",-"JMFM. Journal of Mathematical Fluid Mechanics",-"JMIV. Journal of Mathematical Imaging and Vision",-"JMP.. Journal of Mathematical Physics",-"JMPsy Journal of Mathematical Psychology",-"JMaSc Journal of Mathematical Sciences",-"JMSo. Journal of Mathematical Sociology",-"JMaMe Journal of Mathematics and Mechanics",-"JMaPh Journal of Mathematics and Physics",-"JMecE Journal of Mechanical and Engineering Science",-"JMBM. Journal of Mechanical Behavior and Materials",-"JMSTL Journal of Mechanical Systems for Transportation and Logistics",-"JMPSo Journal of Mechanics Physics of Solids",-"JMNB. Journal of Medecine Nucleaire et Biophysique",-"JMet. Journal of Metals",-"JMemS Journal of Microelectromechanical Systems",-"JMiMi Journal of Micromechanics and Microengineering",-"JMic. Journal of Microscopy",-"JMPeS Journal of Mineralogical and Petrological Sciences",-"JMOp. Journal of Modern Optics",-"JMPh. Journal of Modern Physics",-"JMBio Journal of Molecular Biology",-"JMoEl Journal of Molecular Electronics",-"JMolE Journal of Molecular Evolution",-"JMoSp Journal of Molecular Spectroscopy",-"JMoSt Journal of Molecular Structure",-"JMA.. Journal of Multivariate Analysis",-"JNUNS Journal of Nanjing University (Natural Sciences)",-"JNR.. Journal of Nanoparticle Research",-"JNano Journal of Nanophotonics",-"JNav. Journal of Navigation",-"JNIS. Journal of Near Infrared Spectroscopy",-"JNEng Journal of Neural Engineering",-"JNeur Journal of Neurochemistry",-"JNO.. Journal of Neuro-Oncology",-"JNCS. Journal of Non Crystalline Solids",-"JNE.. Journal of Nondestructive Evaluation",-"JNET. Journal of Non Equilibrium Thermodynamics",-"JNMP. Journal of Nonlinear Mathematical Physics",-"JNLM. Journal of Non Linear Mechanics",-"JNOPM Journal of Nonlinear Optical Physics and Materials",-"JNS.. Journal of NonLinear Science",-"JNuE. Journal of Nuclear Energy",-"JNuM. Journal of Nuclear Materials",-"JNT.. Journal of Number Theory",-"JOUC. Journal of Ocean University of China",-"JOC.. Journal of Optical Communications",-"JON.. Journal of Optical Networking",-"JOptT Journal of Optical Technology",-"JOpt. Journal of Optics",-"JOptA Journal of Optics A: Pure and Applied Optics",-"JOptB Journal of Optics B: Quantum and Semiclassical Optics",-"JOTA. Journal of Optimization Theory Applications",-"JOMS. Journal of Oral and Maxillofacial Surgery",-"JOR.. Journal of Oral Rehabilitation",-"JPal. Journal of Paleontology",-"JPDC. Journal of Parallel and Distributed Computing",-"JPet. Journal of Petrology",-"JPhPh Journal of Pharmacy and Pharmacology",-"JPCRD Journal of Physical and Chemical Reference Data",-"JPCC. Journal of Physical and Colloid Chemistry",-"JPhCh Journal of Physical Chemistry",-"JPCA. Journal of Physical Chemistry A",-"JPCB. Journal of Physical Chemistry B",-"JPO.. Journal of Physical Oceanography",-"JPhSt Journal of Physical Studies",-"JPhA. Journal of Physics A Mathematical General",-"JPCS. Journal of Physics and Chemistry of Solids",-"JPhB. Journal of Physics B Atomic Molecular Physics",-"JPCM. Journal of Physics Condensed Matter",-"JPhCS Journal of Physics Conference Series",-"JPhC. Journal of Physics C Solid State Physics",-"JPhD. Journal of Physics D Applied Physics",-"JPhE. Journal of Physics E Scientific Instruments",-"JPhF. Journal of Physics F Metal Physics",-"JPhG. Journal of Physics G Nuclear Physics",-"JPhGS Journal of Physics G Nuclear Physics Supplement",-"JPE.. Journal of Physics of the Earth",-"JPTEO Journal of Physics Teacher Education Online",-"JPhsg Journal of Physiology",-"JPFR. Journal of Plasma and Fusion Research",-"JPlPh Journal of Plasma Physics",-"JPoSc Journal of Polymer Science",-"JPoSA Journal of Polymer Science A Polymer Chemistry",-"JPoSB Journal of Polymer Science B Polymer Physics",-"JPoSL Journal of Polymer Science: Polymer Letters Edition",-"JPMat Journal of Porous Materials",-"JPES. Journal of Power and Energy Systems",-"JPS.. Journal of Power Sources",-"JPAS. Journal of Practical Applications in Space",-"JPP.. Journal of Propulsion and Power",-"JPT.. Journal of Propulsion Technology",-"JPrCh Journal of Protein Chemistry",-"JPApS Journal of Pure Applied Sciences",-"JQT.. Journal of Quality Technology",-"JQSRT Journal of Quantitative Spectroscopy and Radiative Transfer",-"JQS.. Journal of Quaternary Science",-"JRNC. Journal of Radioanalytical and Nuclear Chemistry",-"JRAC. Journal of Radioanalytical Chemistry",-"JRP.. Journal of Radiological Protection",-"JRSp. Journal of Raman Spectroscopy",-"JRPC. Journal of Reinforced Plastics and Composites",-"JRes. Journal of Research",-"JRPhy Journal of Research in Physics",-"JRScT Journal of Research in Science Teaching",-"JRIST Journal of Research Institute of Science and Technology, College of Science and Technology, Nihon University",-"JRNBS Journal of Research of the National Bureau of Standards",-"JRNBA Journal of Research of the National Bureau of Standards A Physica and Chemsitry",-"JRNBB Journal of Research of the National Bureau of Standards B Mathematical Sciences",-"JRTEd Journal of Research on Technology in Education",-"JResB Journal of Research Section B Mathematical Sciences B",-"JRheo Journal of Rheology",-"JRoS. Journal of Robotic Systems",-"JRLR. Journal of Russian Laser Research",-"JSEdT Journal of Science Education and Technology",-"JSTEd Journal of Science Teacher Education",-"JSCom Journal of Scientific Computing",-"JScI. Journal of Scientific Instruments",-"JSIPI Journal of Scientific Instruments and of Physics in Industry",-"JSR.. Journal of Sea Research",-"JSedR Journal of Sedimentary Research",-"JSeis Journal of Seismology",-"JSemi Journal of Semiconductors",-"JSGeo Journal of Series Geophysics",-"JShR. Journal of Ship Research",-"JSGST Journal of Sol-Gel Science and Technology",-"JSMME Journal of Solid Mechanics and Materials Engineering",-"JSSCh Journal of Solid State Chemistry France",-"JSCh. Journal of Solution Chemistry",-"JSV.. Journal of Sound Vibration",-"JSAES Journal of South American Earth Sciences",-"JSLR. Journal of Soviet Laser Research",-"JSAR. Journal of Space Astronomy Research",-"JSpRo Journal of Spacecraft and Rockets",-"JSpT. Journal of Spacecraft Technology",-"JSpEn Journal of Space Engineering",-"JSWSC Journal of Space Weather and Space Climate",-"JSCS. Journal of Statistical Computation and Simulation",-"JSMTE Journal of Statistical Mechanics: Theory and Experiment",-"JSP.. Journal of Statistical Physics",-"JStA. Journal of Strain Analysis and Engineering Design",-"JSG.. Journal of Structural Geology",-"JSM.. Journal of Structural Mechanics",-"JSup. Journal of Superconductivity",-"JSymC Journal of Symbolic Computation",-"JSDD. Journal of System Design and Dynamics",-"JTePh Journal of Technical Physics",-"JTech Journal of Technology",-"JTeEv Journal of Testing Evaluation",-"JASJa Journal of the Acoustical Society of Japan",-"JAVSO Journal of the American Association of Variable Star Observers (JAAVSO)",-"JAChS Journal of the American Chemical Society",-"JAMS. Journal of the American Mathematical Society",-"JASIS Journal of the American Society for Information Science and Technology",-"JASCE Journal of the American Society of Civil Engineers",-"JAWRA Journal of the American Water Resources Association",-"JALPO Journal of the Association of Lunar and Planetary Observers, the Strolling Astronomer",-"JAnSc Journal of the Astronautical Sciences",-"JASEg Journal of the Astronomical Society of Egypt",-"JASSA Journal of the Astronomical Society of Southern Africa",-"JASV. Journal of the Astronomical Society of Victoria Melbourne",-"JASWA Journal of the Astronomical Society of Western Australia",-"JBAA. Journal of the British Astronomical Association",-"JBAS. Journal of the British Astronomical Society",-"JBIS. Journal of the British Interplanetary Society",-"JCSS. Journal of the Chinese Silicate Society",-"JElS. Journal of the Electrochemical Society",-"FrInJ Journal of The Franklin Institute",-"JGSJ. Journal of the Geodetic Society of Japan",-"JIISB Journal of the Indian Institute of Science Section B Physical and Chemical Series",-"JIEEJ Journal of The Institute of Electrical Engineers of Japan",-"JIMIA Journal of the Institute of Mathematics and Its Applications",-"JIPNT Journal of the Institute of Positioning, Navigation and Timing of Japan",-"JIETE Journal of the Institution of Electronics and Telecommunication Engineers",-"JJSMS Journal of the Japan Society for Marine Surveys and Technology",-"JLMS. Journal of the London Mathematical Society",-"JORS. Journal of the Operational Research Society",-"JOSA. Journal of the Optical Society of America (1917-1983)",-"JOSAA Journal of the Optical Society of America A",-"JOSAB Journal of the Optical Society of America B Optical Physics",-"JTAM. Journal of Theoretical and Applied Mechanics",-"JTBio Journal of Theoretical Biology",-"JPSJ. Journal of the Physical Society of Japan",-"JPSJS Journal of the Physical Society of Japan Supplement",-"JTAC. Journal of Thermal Analysis and Calorimetry",-"JThSc Journal of Thermal Science",-"JJTST Journal of Thermal Science and Technology",-"JTST. Journal of Thermal Spray Technology",-"JThSt Journal of Thermal Stresses",-"JTh.. Journal of Thermodynamics",-"JTHT. Journal of Thermophysics and Heat Transfer",-"JThCM Journal of Thermoplastic Composite Materials",-"JRASA Journal of the Royal Aeronautical Society of London",-"JRASC Journal of the Royal Astronomical Society of Canada",-"JRASN Journal of the Royal Astronomical Society of New Zealand",-"JRCSE Journal of the Royal College of Surgeons of Edinburgh",-"JRSSD Journal of the Royal Statistical Society: Series D (The Statistician)",-"JSRP. Journal of the Society for Radiological Protection",-"JSPST Journal of The Society of Photographic Science and Technology of Japan",-"JSARA Journal of the Southeastern Association for Research in Astronomy",-"JSD.. Journal of the Structural Division, American Society of Civil Engineers",-"JVSJ Journal of the Vacuum Society of Japan",-"JWasA Journal of the Washington Academy of Sciences",-"JTF.. Journal of Time and Frequency",-"JTurb Journal of Turbulence",-"JVST. Journal of Vacuum Science Technology",-"JVSTA Journal of Vacuum Science Technology A: Vacuum Surfaces and Films",-"JVSTB Journal of Vacuum Science Technology B: Microelectronics and Nanometer Structures",-"JVC.. Journal of Vibration and Control",-"JVE.. Journal of Vibration Engineering",-"JVCIR Journal of Visual Communication and Image Representation",-"JVGR. Journal of Volcanology and Geothermal Research",-"JWMSE Journal of Women and Minorities in Science and Engineering",-"JXST. Journal of X-Ray Science and Technology",-"RpScT JPRS Report Science Technology USSR Space",-"JSMB. JSME Bulletin",-"JSMEJ JSME International Journal",-"JSMEA JSME International Journal Series A",-"JSMEB JSME International Journal Series B",-"JSMEC JSME International Journal Series C",-"JSMET JSME Transactions",-"KKR.. Kagaku Kogaku Ronbunshu",-"MmKMO Kakioka Magnetic Observatory Memoirs",-"KEIJ. Kansei Engineering International Journal",-"GroR. Kapteyn Astronomical Laboratory Groningen Reports",-"KIzKU Kazan Izdatel Kazanskogo Universiteta",-"MeeRe Kenneth Mees Observatory Reprints",-"KernR Kernforschungsanlage Rept Res Results Solid State Nucl Phys",-"KexT. Kexue Tongbao",-"Khago Khagol",-"KharI Kharkov Izdanie IRE AN USSR",-"KTTM. Khimiia i Tekhnologiia Topliv i Masel",-"KhPl. Khimiia Plazmy",-"KVnT. Kibernetika i Vychislitel naia Tekhnika",-"KiInF Kiev Institut Fiziki AN USSR",-"KiInM Kiev Institut Matematiki AN USSR",-"KIPME Kiev Institut Problem Modelirovaniia Energetike AN USSR",-"KIzIM Kiev Izdanie Instituta Matematiki AN USSR",-"KiIND Kiev Izdatel Naukova Dumka",-"KiIzT Kiev Izdatel Tekhnika",-"KIzVS Kiev Izdatel Vishcha Shkola",-"KiePr Kievskij Ordena Lenina Gosudarstvennyj Universitet Shevchenko Astronomicheskaya Observatoriya - Preprint",-"KPCB. Kinematics and Physics of Celestial Bodies",-"KPCBS Kinematics and Physics of Celestial Bodies, Supplement",-"KFNT. Kinematika i Fizika Nebesnykh Tel",-"KFNTS Kinematika i Fizika Nebesnykh Tel Supplement",-"KiCat Kinetics and Catalysis",-"KIzS. Kishinev Izdatel Shtiintsa",-"KPNON Kitt Peak National Observatory Newsletter",-"KVeBB Kleine Veroeffentlichungen der Universitaetssternwarte zu Berlin Babelsberg",-"KlBer Kleinheubacher Berichte",-"KodOB Kodaikanal Observatory Bulletins",-"KodRe Kodaikanal Observatory Reprints",-"KomTs Kometnyj Tsirkulyar",-"KomMe Komety i Meteory",-"KNAB. Koninklijke Nederlandse Akademie van Weteschappen Proceedings Series B Physical Sciences",-"KIMMJ Korean Institute of Metals and Materials Journal",-"KNT.. Kosmicheskaia Nauka i Tekhnika",-"KosIs Kosmicheskie Issledovaniia",-"KosIU Kosmicheskie Issledovaniia Ukraine",-"KosLu Kosmicheskie Luchi",-"KosNT Kosmichna Nauka i Tekhnologiya",-"Kozmo Kozmos",-"KT... K-Theory",-"KSVH. Kungl. Svenska Vetenskapsakademiens Handlingar",-"KvanE Kvantovaia Elektronika Moscow",-"Kyb.. Kybernetes",-"KyoMe Kyoto University Faculty Engineering Memoirs",-"KyITB Kyushu Institute Technology Bulletin",-"KUFEM Kyushu University Faculty Engineering Memoirs",-"KyUAM Kyushu University Research Institute Applied Mechanics Reports",-"KyUSR Kyushu University Research Institute Industrial Science Reports",-"KyUTR Kyushu University Technology Reports",-"LChip Lab on a Chip",-"AerAs L'Aeronautique et L'Astronautique",-"AerMS L'Aerotecnica Missili e Spazio",-"LHBl. La Houille Blanche",-"Meteo La Meteorologie",-"LDD.. Land Degradation &",-"LanB. Landolt Börnstein",-"Langm Langmuir",-"LaJ.. Lapidary Journal",-"Rech. La Recherche",-"ReAer La Recherche Aerospatiale",-"ReAeB La Recherche Aerospatiale Bimonthly Bulletin ESA",-"ReSp. La Recherche Spatiale",-"LPB.. Laser and Particle Beams",-"LaEO. Laser Elektro Optik",-"LaFoc Laser Focus",-"LasJ. Laser Journal",-"LaPhy Laser Physics",-"LaPhL Laser Physics Letters",-"LaPhR Laser Physics Review",-"Astrf L'Astrofilo Bolletino Trimestral del Gruppo Astrofili Villaggio Sereno Brescia",-"LAstr L'Astronomie",-"LTerm La Termotecnica",-"LatJP Latvian Journal of Physics and Technical Sciences",-"LatME Latviiskii Matematicheskii Ezhegodnik",-"LawOB Laws Observatory Bulletin, University of Missouri",-"LBLRR LBL Research Review",-"ASPL. Leaflet of the Astronomical Society of the Pacific",-"ASPLS Leaflet of the Astronomical Society of the Pacific (Supplement)",-"LePub Learned Publishing",-"LERec L'Echo des Recherches",-"Ciel. Le Ciel",-"LNEA. Lecture Notes and Essays in Astrophysics",-"LNSP. Lecture Notes and Supplements in Physics",-"LNCS. Lecture Notes in Computer Science",-"LNES. Lecture Notes in Earth Sciences, Berlin Springer Verlag",-"LNEn. Lecture Notes in Engineering, Berlin Springer Verlag",-"LNM.. Lecture Notes in Mathematics, Berlin Springer Verlag",-"LNP.. Lecture Notes in Physics, Berlin Springer Verlag",-"LNPAM Lecture Notes in Pure and Applied Mathematics",-"LeBAN Leningrad Biblioteka Akademii Nauk SSSR",-"LeEne Leningrad Energoizdat",-"LeGid Leningrad Gidrometeoizdat",-"PrAtO Leningrad Gidrometeoizdat Sovremennye Problemy Atmosfernoi Optiki",-"LeIzE Leningrad Izdatel Energiia",-"LeIzG Leningrad Izdatel Gidrometeoizdat",-"LeIzK Leningrad Izdatel Khimiia",-"LeIzU Leningrad Izdatel Leningradskogo Universiteta",-"LeIzM Leningrad Izdatel Mashinostroenie",-"LeIzN Leningrad Izdatel Nauka",-"LIzNe Leningrad Izdatel Nedra",-"IzLen Leningrad, Izdatel'stvo Nauka",-"LeIzS Leningrad Izdatel Sudostroenie",-"LeLen Leningrad Lenizdat",-"LGUPM Leningradskii Gosudarstvennyi Universitet Problemy Matematicheskoi Fiziki",-"VeLen Leningradskii Universitet Vestnik Matematika Mekhanika Astronomiia",-"LeRad Le Radium",-"Leo.. Leonardo",-"LFTR. LEST Foundation, Technical Report",-"LHMT. Letters Heat Mass Transfer",-"LAES. Letters in Applied and Engineering Sciences",-"LMaPh Letters in Mathematical Physics",-"LicOB Lick Observatory Bulletin",-"LFR.. Lietuvos Fizikos Rinkinys",-"LDA.. Lifetime Data Analysis",-"LLabJ Lincoln Laboratory Journal",-"LiCr. Liquid Crystals",-"Litho Lithos",-"LitJP Lithuanian Journal of Physics and Technical Sciences",-"LRR.. Living Reviews in Relativity",-"LRSP. Living Reviews in Solar Physics",-"LockH Lockheed Horizons",-"LOEle L'Onde Electrique",-"LowOB Lowell Observatory Bulletin",-"LTP.. Low Temperature Physics",-"LPIBu LPI Bulletin",-"LPICo LPI Contributions",-"LubEn Lubrication Engineering",-"LR... Luft und Raumfahrt",-"LuRaQ Luft und Raumfahrt Quarter",-"LPSC. Lunar and Planetary Science Conference Proceedings",-"LCEC. Luxembourg Commission European Communities",-"LIVS. Lvov Izdatel Vishcha Shkola",-"LvoTs L'vovskij Ordena Lenina Gosudarstvennyj Universitet Tsirkulyar",-"MaDes Machine Design",-"MLear Machine Learning",-"MmCP. Macromolecular Chemistry and Physics",-"MaMol Macromolecules",-"MadOO Madras Observatory Astronomical Observations",-"MadOb Madras Observatory Observations",-"MagFE Magnetic Fusion Energy",-"MRMed Magnetic Resonance in Medicine",-"MRMPB Magnetic Resonance Materials in Physics Biology and Medicine",-"MRRev Magnetic Resonance Review",-"MHD.. Magnetohydrodynamics",-"MagGi Magnitnaia Gidrodinamika",-"MagIs Magnitosfernye Issledovaniia",-"MTACI Magyar Tudomanyos Akademia Csillagvizsgalo Intezetenek koezlemenyei",-"MAWMN Mainz Akademie Wissenschaften Mathematisch Naturwissenschaftliche Klasse",-"Lapa. Majalah LAPAN",-"MWGBI Mannheim West Germany Bibliographisches Institut AG",-"MaTeJ ManTech Journal",-"MGeo. Manuscr. Geod.",-"ManGe Manuscripta Geodaetica",-"MarRv Marconi Review",-"MarGe Marine Geodesy",-"MarGR Marine Geophysical Research",-"MarPG Marine Petroleum Geology",-"Mars. Mars",-"Mashi Mashinostroenie",-"MsT.. Masters Thesis",-"MaFiz Matematicheskaia Fizika",-"MFiNM Matematicheskaia Fizika i Nelineinaia Mekhanika",-"MatIs Matematicheskie Issledovaniia",-"MMFMP Matematicheskie Metody i Fiziko Mekhanicheskie Polia",-"MISTr Matematicheskii Institut imeni Steklova Trudy",-"MMTET Matematicheskoe Modelirovanie i Teoriia Elektricheskikh Tsepei",-"MatVe Matematichki Vesnik",-"Mater Materialpruefung",-"Mate. Materials",-"MMP.. Materials and Manufacturing Processes",-"MCP.. Materials Chemistry and Physics",-"MaHT. Materials at High Temperatures",-"MatEv Materials Evaluation",-"MatL. Materials Letters",-"MaRBu Materials Research Bulletin",-"MRSSP Materials Research Society Symposia Proceedings",-"MSEng Materials Science and Engineering",-"MSEnA Materials Science and Engineering A",-"MSEnB Materials Science and Engineering B",-"MSEnC Materials Science and Engineering C",-"MSEnR Materials Science and Engineering R Reports",-"MSTec Materials Science and Technology",-"MSF.. Materials Science Forum",-"MatSP Materials Science Poland",-"MatST Materials Science Technology",-"MatTr Materials Transactions JIM",-"MatTe Materiaux et Techniques",-"MComM Mathematical and Computer Modelling",-"MEI.. Mathematical Engineering Industry",-"MaFi. Mathematical Finance",-"MatG. Mathematical Geology",-"MMAS. Mathematical Methods in the Applied Sciences",-"MatM. Mathematical Modelling",-"MMNA. Mathematical Modelling Numerical Analysis",-"M3AS. Mathematical Models and Methods in Applied Sciences",-"MPAG. Mathematical Physics, Analysis and Geometry",-"MPAM. Mathematical Physics and Applied Mathematics",-"MaPEJ Mathematical Physics Electronic Journal",-"MaPhS Mathematical Physics Studies",-"MaPr. Mathematical Proceedings",-"MPCPS Mathematical Proceedings of the Cambridge Philosophical Society",-"MatPr Mathematical Programming",-"MatRv Mathematical Reviews",-"MMS.. Mathematics and Mechanics of Solids",-"MEdRJ Mathematics Education Research Journal",-"MaCom Mathematics of Computation",-"Mat.. Mathematika",-"MatAn Mathematische Annalen",-"MatNa Mathematische Nachrichten",-"MatZe Mathematische Zeitschrift",-"MitAe Max Planck Institut Aeronomie Mitteilungen",-"MPARp Max Planck Institut fur Astrophysik Report",-"Meas. Measurements",-"MeScT Measurement Science and Technology",-"MeScR Measurement Science Review",-"Mecc. Meccanica",-"MecEn Mechanical Engineering",-"MSSP. Mechanical Systems and Signal Processing",-"MPDS. Mechanics and Physics of Discrete Systems",-"MCMS. Mechanics of Composite Materials",-"MSM.. Mechanics of Structures and Machines",-"MTDM. Mechanics of Time-Dependent Materials",-"MeReC Mechanics Research Communications",-"MeTeS Mechanika Teoretyczna i Stosowana",-"MeMaT Mechanism and Machine Theory",-"MeUpp Meddelanden fran Astronomiska Observatorium Uppsala",-"MeLu1 Meddelanden fran Lunds Astronomiska Observatorium Serie I",-"MeLu2 Meddelanden fran Lunds Astronomiska Observatorium Serie II",-"MeAar Meddelser fra Ole Romer Observatoriet Aarhus",-"MeGen Mededelingen Universiteit te Gent Sterrenkundig Instituut",-"MeLeu Mededelingen van het Astronomisch Instituut van de Katholieke Universiteit Leuven",-"MedPh Medical Physics",-"MekGS Mekhanika Giroskopicheskikh Sistem",-"MekKM Mekhanika Kompozitnykh Materialov",-"MekP. Mekhanika Polimerov",-"MekTT Mekhanika Tverdogo Tela",-"MelAR Melbourne Observatory Annual Report",-"MelOO Melbourne Observatory Observations",-"MmEbr Memoires de l'Observatoire de l'Ebre",-"MmARB Memoires of the Academie Royale de Belgique",-"MmMtS Memoires of the Mount Stromlo Observervatory",-"MSRSL Memoires of the Societe Royale des Sciences de Liege",-"MeSRM Memoires Scientifiques de la Revue de Metallurgie",-"MmKyo Memoirs Faculty of Sciences University of Kyoto",-"MmASI Memoirs of the Astronomical Society of India",-"MmBAA Memoirs of the British Astronomical Association",-"MmRAS Memoirs of the Royal Astronomical Society",-"MmSAI Memorie della Societa Astronomica Italiana",-"MSAIS Memorie della Societa Astronomica Italiana Supplementi",-"MmSSI Memorie della Societa Degli Spettroscopisti Italiani",-"MmSS. Memorie della Societa Degli Spettroscopisti Italiani, serie 2",-"MmSGI Memorie della Societa Geologica Italiana",-"MmNap Memorie del R. Osservatorio di Capodimonte in Napoli",-"MeCom Mendeleev Communications",-"Mercu Mercury",-"MeAut Meres es Automatika",-"MeRAu Mesures Regulation Automatisme",-"Metal Metallofizika",-"MTObM Metallovedenie i Termicheskaia Obrabotka Metallov",-"MMTA. Metallurgical and Materials Transactions A",-"MMTB. Metallurgical and Materials Transactions B",-"MTA.. Metallurgical Transactions A",-"MTB.. Metallurgical Transactions B",-"MTPMM Metallurgical Transactions Physical Metallurgy Materials Science",-"MetaM Metamaterials",-"MTRMA Meteor Forschungsergebnisse Reihe B Meteorologie und Aeronomie",-"Metit Meteorites",-"Met.. Meteorite - The International Quarterly of Meteorites and Meteorite Science",-"Metic Meteoritics",-"Metik Meteoritika",-"MetRR Meteornoe Rasprostranenie Radiovoln",-"MetIs Meteornye Issledovaniia",-"MeApp Meteorological Applications",-"MetMa Meteorological Magazine",-"MetMo Meteorological Monographs",-"MSCTN Meteorological Satellite Center Technical Note",-"MeSJJ Meteorological Society of Japan Journal",-"MetZp Meteorologicke Zpravy",-"MeGid Meteorologiia i Gidrologiia",-"MetRu Meteorologische Rundschau",-"MetZe Meteorologische Zeitschrift",-"MAP.. Meteorology and Atmospheric Physics",-"MetAP Meteorology Atmospheric Physics",-"MetHy Meteorology Hydrology JPRS",-"MeRR. Meteor. rasprostr. radiovoln, Kazan",-"MVMP. Methoden und Verfahren der Mathematischen Physik",-"MCME. Methods: A Companion to Methods in Enzymology",-"MApAn Methods and Applications of Analysis",-"MComP Methods in Computational Physics",-"MGG.. Methods in Geochemistry and Geophysics",-"MSB.. Methods in Subnuclear Physics",-"MExP. Methods of Experimental Physics",-"MetVy Metody Vychislenii",-"Metro Metrologia",-"MicEc Microbial Ecology",-"MPFD. Microdevices: Physics and Fabrication Technologies",-"MiEng Microelectronic Engineering",-"MiI.. Microelectronics International",-"MiRe. Microelectronics Reliability",-"MicgQ Microgravity Quarterly",-"MiST. Microgravity Science and Technology",-"MTEng Microscale Thermophysical Engineering",-"MiMic Microscopy and Microanalysis",-"MiOTL Microwave and Optical Technology Letters",-"MiJo. Microwave Journal",-"MicWa Microwaves",-"AcMik Mikrochimica Acta",-"Mikro Mikroelektronika",-"MikSb Mikroelektronika Sbornik",-"MAIMT Milan Associazione Italiana di Meccanica Teorica ed Applicata",-"MSMFR Milano Seminario Matematico e Fisico Rendiconti",-"MiElC Military Electronics Countermeasures",-"MiLa. Mind and Language",-"MinDe Mineralium Deposita",-"Miner Mineralogia",-"MinM. Mineralogical Magazine",-"MinPe Mineralogy and Petrology",-"MinPh Mineral Physics",-"MWE.. Mine Water and The Environment",-"MPBu. Minor Planet Bulletin",-"MPC.. Minor Planet Circulars",-"MPEC. Minor Planet Electronic Circulars",-"IzMin Minsk Izdatel BGU",-"MiINT Minsk Izdatel Nauka i Tekhnika",-"MisSp Missiles Spacecraft",-"MAPSE Mission Analysis Program Solar Electric Propulsion MAPSEP",-"MHITR Mitsubishi Heavy Industries Technical Review",-"MitAG Mitteilungen der Astronomischen Gesellschaft Hamburg",-"MiBon Mitteilungen der Astronomischen Institute der Universitaet Bonn",-"MiBas Mitteilungen der Astronomisch-Meteorologischen Anstalt der Universitaet Basel Astronomische Reihe",-"MiHar Mitteilungen der Bruno-H.-Buergel-Sternwarte Hartha DDR",-"MiHam Mitteilungen der Hamburger Sternwarte in Bergedorf",-"MiKon Mitteilungen der Konkoly Sternwarte Budapest-Szabadsaghegy",-"MiPul Mitteilungen der Nikolai-Hauptsternwarte zu Pulkowo",-"MiBud Mitteilungen der Sternwarte der Ungarischen Akademie der Wissenschaften Budapest",-"MiInn Mitteilungen der Sternwarte Innsbruck",-"MiMun Mitteilungen der Sternwarte Munchen",-"MiSon Mitteilungen der Sternwarte zu Sonneberg",-"MiGra Mitteilungen der Universitaets-Sternwarte Graz",-"MiWie Mitteilungen der Universitaets-Sternwarte Wien",-"MiJen Mitteilungen der Universitaets-Sternwarte zu Jena",-"MiTue Mitteilungen des Astronomischen Instituts der Universitaet Tuebingen",-"MiMue Mitteilungen des Astronomischen Instituts des Universitaet Munster",-"MiPot Mitteilungen des Astrophysikalischen Observatoriums Potsdam",-"MiGIR Mitteilungen Geod. Institut Rheinischen Friedrich-Wilhelms-Universitaets. Bonn",-"MSMSE Modelling Simul. Mater. Sci. Eng.",-"MAG.. Modern Approaches in Geophysics",-"ModGe Modern Geology",-"ModIn Modern Instrumentation",-"MIMPE Modern Instrumentation and Measurements in Physics and Engineering",-"ModPh Modern Physics",-"MPLA. Modern Physics Letters A",-"MPLB. Modern Physics Letters B",-"MJPS. Moldavian Journal of the Physical Sciences",-"MBB.. Molecular Biology and Biophysics",-"MBBB. Molecular Biology Biochemistry and Biophysics",-"MCLC. Molecular Crystals and Liquid Crystals",-"MGM.. Molecular Genetics and Metabolism",-"MolPh Molecular Physics",-"MoPhR Molecular Physics Reports",-"MoSim Molecular Simulation",-"MCBEH Monatliche Correspondenz zur Beforderung der Erd- und Himmels-kunde",-"WisBB Monatsber. Deutsch. Akad Wissenschaftliche Berlin",-"MEEP. Monographs on Environment, Earth and Planets",-"MNSSJ Monthly notes of the Astronomical Society of South Africa",-"MNSSA Monthly Notes of the Astronomical Society of South Africa",-"MNRAS Monthly Notices of the Royal Astronomical Society",-"MWRv. Monthly Weather Review",-"Moon. Moon",-"MorGI Morskie Gidrofizicheskie Issledovaniia",-"MAtom Moscow Atomizdat",-"MoEBA Moscow Energoatomizdat Biblioteka Automatike",-"MEner Moscow Energoizdat",-"MoGid Moscow Gidrometeoizdat",-"MoIKI Moscow Institut Kosmicheskikh Issledovanii AN SSSR",-"MoIPM Moscow Institut Prikladnoi Matematiki AN SSSR",-"MoIzA Moscow Izdatel Atomizdat",-"MoIzE Moscow Izdatel Energiia",-"MIEBA Moscow Izdatel Energiia Biblioteka Avtomatike",-"MIEBR Moscow Izdatel Energiia Biblioteka Radioelektronike",-"MoIzK Moscow Izdatel Khimiia",-"MIzLI Moscow Izdatel Legkaia Industriia",-"MIzMa Moscow Izdatel Mashinostroenie",-"MIzMe Moscow Izdatel Metallurgiia",-"MoIzM Moscow Izdatel Moskovskogo Universiteta",-"MIzMU Moscow Izdatel Moskovskogo Universiteta Pt",-"MoIzN Moscow Izdatel Nauka",-"MINFI Moscow Izdatel Nauka AN SSR Fizicheskii Institut Trudy",-"MINCV Moscow Izdatel Nauka AN SSSR Chteniia imeni Vernadskogo",-"MoINA Moscow Izdatel Nauka AN SSSR Fizicheskii Institut Trudy",-"MINGI Moscow Izdatel Nauka AN SSSR Geologicheskoi Institut Trudy",-"MINMI Moscow Izdatel Nauka AN SSSR Matematicheskii Institut Trudy",-"MoINI Moscow Izdatel Nauka Issledovaniia Geomagnetizmu Aeronomii i Fizike Solntsa",-"MINTF Moscow Izdatel Nauka Teoreticheskaia Fizika",-"MINVS Moscow Izdatel Nauka Vychislitel naia Seismologiia",-"MIzNe Moscow Izdatel Nedra",-"MIzRS Moscow Izdatel Radio Sviaz",-"MIzSR Moscow Izdatel Sovetskoe Radio",-"MISRI Moscow Izdatel Sovetskoe Radio Ionosfernye Issledovaniia",-"MoIzS Moscow Izdatel Sviaz",-"MISST Moscow Izdatel Sviaz Statisticheskaia Teoriia sviazi",-"MoIzT Moscow Izdatel Transport",-"MoIzV Moscow Izdatel VINITI",-"MIzVS Moscow Izdatel Vysshaia Shkola",-"MoIzZ Moscow Izdatel Znanie",-"MIZNZ Moscow Izdatel Znanie Novoe Zhizni Nauke Tekhnike Seriia Fizika",-"MosIZ Moscow IZMIRAN",-"MoMTN Moscow Mezhdunarodnyi Tsentr Nauchnoi i Tekhnicheskoi Informatsii",-"MoMGK Moscow Mezhduvedomstvennyi Geofizicheskii Komitet",-"MUPB. Moscow University Physics Bulletin",-"MoVIN Moscow VINITI",-"MosVo Moscow Voenizdat",-"MosVI Moscow Voennoe Izdatel",-"MoVNT Moscow Vychislitel nyi Tsentr AN SSSR",-"MoVyS Moscow Vysshaia Shkola",-"MoLLP Moshchnye lazery i lazernaia plazma",-"MoEIT Moskovskii Energeticheskii Institut Trudy",-"MGUMN Moskovskii Gosudarstvennyi Universitet Institut Mekhaniki Nauchnye Trudy",-"MGIMO Moskovskii Gosudarstvennyi Universitet Institut Mekhaniki Otchet",-"MVSFA Moskovskii Universitet Vestnik Seriia Fizika Astronomiia",-"MUVSK Moskovskii Universitet Vestnik Seriia Khimiia",-"MVSMM Moskovskii Universitet Vestnik Seriia Matematika Mekhanika",-"MGTVM Moskovskij Gosudarstvennyj Tekhnicheskij Universitet Vestnik Seriya Mashinostroenie",-"MGTVP Moskovskij Gosudarstvennyj Tekhnicheskij Universitet Vestnik Seriya Priborostroenie",-"MotZe Motortechnische Zeitschrift",-"MtSOM Mount Stromlo Observatory Mimeographs",-"MtSRe Mount Stromlo Observatory Reprints",-"MtWAR Mount Wilson and Palomar Observatory Annual Report",-"MtWRe Mount Wilson and Palomar Observatory Reprints",-"MWOAR Mount Wilson Observatory Annual Report",-"MPERp MPE Report",-"MRSBu MRS Bulletin",-"MUSS. Muenchen Universitaets Schriften Serie",-"MROVG Munich R Oldenbourg Verlag GmbH",-"NISZ. Nabliudeniia Iskusstvennykh Sputnikov Zemli",-"NINT. Nablyud. Iskusstvennykh Nebesnykh Tel",-"NAZ.. Nachrichtenblatt der Astronomischen Zentralstelle Heidelberg",-"NVS.. Nachrichtenblatt der Vereinigung der Sternfreunde",-"NacEl Nachrichten Elektronik",-"NGFAW Nachrichtentechnische Gesellschaft Fachtagung ueber Antennen",-"NacZe Nachrichtentechnische Zeitschrift",-"NOGB. Nachr. Olbers-Ges. Bremen",-"NUFEM Nagoya University Faculty Engineering Memoirs",-"NURIA Nagoya University Research Institute of Atmospherics Proceedings",-"NUSEM Nagoya University School Engineering Memoirs",-"NaAIJ Nanjing Aeronautical Institute Journal",-"NUAAJ Nanjing University Aeronautics and Astronautics Journal",-"NanoL Nano Letters",-"Nanos Nanoscale",-"NRL.. Nanoscale Research Letters",-"Nanot Nanotechnology",-"NIUNA Napoli Istituto Universitario Navale Annali",-"NASCL NASA Circular Letter",-"PDSS. NASA Planetary Data System",-"NASRP NASA Reference Publication",-"NASSP NASA Special Publication",-"STIA. NASA STI/Recon Technical Report A",-"STIN. NASA STI/Recon Technical Report N",-"NASTM NASA Technical Memo",-"NBSSP National Bureau of Standards Special Publication",-"NBSTN National Bureau of Standards Technical Note",-"NaGe. National Geographic",-"NISTJ National Institute of Standards and Technology Journal of Research",-"PolRe National Institute Polar Research Memoirs",-"BAth. National Observatory of Athens Greece Bulletin of the Astronomical Institute",-"NRAON National Radio Astronomy Observatory Newsletter",-"NRAOR National Radio Astronomy Observatory Reprints",-"NRAOW National Radio Astronomy Observatory Workshop",-"NUDTJ National University Defense Technology Journal",-"NHESS Natural Hazards and Earth System Sciences",-"NatH. Natural History",-"NatSc Natural Science",-"Natur Nature",-"NatBi Nature Biotechnology",-"NatCh Nature Chemistry",-"NatCC Nature Climate Change",-"NatCo Nature Communications",-"NatGe Nature Geoscience",-"NatMa Nature Materials",-"NatNa Nature Nanotechnology",-"NaPho Nature Photonics",-"NPhS. Nature Physical Science",-"NatPh Nature Physics",-"NatSR Nature Scientific Reports",-"NW... Naturwissenschaften",-"NInfo Nauchnye Informatsii",-"NRRv. Naval Research Reviews",-"Navig Navigation",-"NavAu Navigation Australia",-"NavPa Navigation Paris",-"NVVSR Nederlandse Vereiniging voor Weer en Sterrenkunde Werkgroep veranderlijke Sterren Reports",-"NCNS. Network: Computation in Neural Systems",-"NSpEc Networks and Spatial Economics",-"AnBog Neue Annalen der Koeniglichen Sternwarte in Bogenhausen bei Muenchen",-"NJMM. Neues Jahrbuch Mineralogie Monatshefte",-"NeCom Neural Computation",-"NN... Neural Networks",-"NeuL. Neuroscience Letters",-"NPNDS Neutron Physics and Nuclear Data in Science and Technology",-"NewA. New Astronomy",-"NewAR New Astronomy Reviews",-"NJCh. New Journal of Chemistry",-"NJPh. New Journal of Physics",-"NewSc New Scientist",-"ASNYN News Letter of the Astronomical Society of New York",-"ICHIN Newsletters of the Interdivisional Commission on History of the IAGA",-"NTN.. New Technology News",-"NZJGG New Zealand Journal Geology and Geophysics",-"NZJS. New Zealand Journal of Science",-"NKG.. Nihon Kessho Gakkaishi",-"NOHIC Nizamiah JAPAL Rangapur Observatories Hyderabad India Contributions",-"NizRe Nizamiah Observatory Reprints",-"NCE.. Noise Control Engineering Journal",-"NTE.. Nondestructive Testing and Evaluation",-"NDTI. Nondestructive Testing and Evaluation International",-"NTCo. Nondestructive Testing Communications",-"NPPSB Nonequilibrium Problems in the Physical Sciences and Biology",-"NATM. Nonlinear Analysis Theory Methods Applications",-"Nonli Nonlinearity",-"NlOpt Nonlinear Optics",-"NPGeo Nonlinear Processes in Geophysics",-"NSAP. Nonlinear, Statistical and Applied Physics",-"NTA.. Nonlinear Theory and Its Applications, IEICE",-"NATi. Nordisk Astronomisk Tidsskrift",-"SApMM North Holland Series Applied Mathematical Mechanics",-"NHCWP North Hollywood Calif Western Periodicals Co",-"NPUJ. Northwestern Polytechnical University Journal",-"NoDef Not Defined",-"NoPar Notes et Informations",-"NROpt Nouvelle Revue d'Optique",-"NROA. Nouvelle Revue d'Optique Appliquee",-"UGC.. Nova Acta Regiae Soc. Sci. Upsaliensis Ser. V",-"NTvA. Novaya tekhn. v astron.",-"NoIGG Novosibirsk Institut Geologii i Geofiziki SO AN SSSR",-"NovIG Novosibirsk Institut Gidrodinamiki SO AN SSSR Dinamika Sploshnoi Sredy",-"NoIzN Novosibirsk Izdatel Nauka",-"NSSDC NSSDC Publication",-"NTTRv NTT Review",-"NDS.. Nuclear Data Sheets",-"NDT.. Nuclear Data Tables",-"NuEnD Nuclear Engineering and Design",-"NucFu Nuclear Fusion",-"NucFS Nuclear Fusion Special Supplement",-"NuGeo Nuclear Geophysics",-"NucIM Nuclear Instruments and Methods",-"NIMPR Nuclear Instruments and Methods in Physics Research",-"NIMPA Nuclear Instruments and Methods in Physics Research A",-"NIMPB Nuclear Instruments and Methods in Physics Research B",-"NucPh Nuclear Physics",-"NuPhA Nuclear Physics A",-"NuPhB Nuclear Physics B",-"NuPhS Nuclear Physics B Proceedings Supplements",-"NSE.. Nuclear Science Engineering",-"NucTe Nuclear Technology",-"NucTF Nuclear Technology Fusion",-"NAR.. Nucleic Acids Research",-"NuAlg Numerical Algorithms",-"NFAO. Numerical Functional Analysis and Optimization",-"NumHT Numerical Heat Transfer",-"NHTA. Numerical Heat Transfer Part A - Applications",-"NHTB. Numerical Heat Transfer Part B - Fundamentals",-"NuMat Numerische Mathematik",-"NCimA Nuovo Cimento A Serie",-"NCimB Nuovo Cimento B Serie",-"NCimC Nuovo Cimento C Geophysics Space Physics C",-"NCimD Nuovo Cimento D Serie",-"NCimL Nuovo Cimento Lettere",-"NCimR Nuovo Cimento Rivista Serie",-"NCimS Nuovo Cimento Serie",-"OCSC. OAA Compututer Section Circular",-"OSUC. Observationes Astronomicas Insitutas in Specula Universitatis Caesareae Dorpatensis",-"OVS.. Observation of Variable Stars",-"Obser Observation pi",-"OAORP Observations astronomiques faites a l'Observatoire royal de Paris",-"USNOO Observations made at the U.S. Naval Observatory",-"OOVRO Observations Owens Valley Radio Observatory",-"Bes1K Observatoire de Besancon",-"OBN1K Observatoire de Besancon - CNES",-"Gen1K Observatoire de Geneve",-"OSFOT Observatoire de la Société Astronomique de France Observations et Travaux",-"LyoRe Observatoire de Lyon Reprints",-"Meu1K Observatoire de Meudon",-"Nic1K Observatoire de Nice",-"CORB. Observatoire Royal de Belgique Communications Serie B",-"LPlaC Observatorio Astronomico de La Plata Circular",-"LPlaS Observatorio Astronomico de La Plata Separata Astronomica",-"RosOB Observatorio Astronomico Municipal de Rosario Argentia Boletin",-"RioB. Observatorio Nacional Publicacoes do Servico Astronomico Rio de Janeiro",-"HelR. Observatory and Astrophysics Laboratory University of Helsinki Report",-"PLPla Observatory Astronomical La Plata Series Astronomies",-"ObVyS Obzory Vysokotemperaturnoi Sverkhprovodimosti",-"ONRAS Occasional Notes of the Royal Astronomical Society",-"ORROE Occasional Reports of the Royal Observatory Edinburgh",-"OccN. Occultation Newsletter, International Occultation Timing Association (IOTA)",-"OcDyn Ocean Dynamics",-"OcEng Ocean Engineering",-"OcMod Ocean Modelling",-"OSJaJ Oceanographical Society of Japan Journal",-"AcOC. Oceanologica Acta",-"Ocgy. Oceanology",-"OcPhE Ocean Physics and Engineering",-"OcSci Ocean Science",-"OcScD Ocean Science Discussions",-"OSJ.. Ocean Science Journal",-"Ocean Oceanus Summer",-"OAP.. Odessa Astronomical Publications",-"BOOde Odesskij Gosudarstvennyi Universitet im. I. I. Mechnikova Byulletin Astronomicheskoj Observatorii",-"IzOde Odesskij Gosudarstvennyi Universitet im. I. I. Mechnikova Izvestiya Astronomicheskoj Observatorii",-"OAWMN Oesterreichische Akademie Wissenschaften Mathematisch naturwissenschaftliche Klasse Sitzungsberichte Abteilung",-"Oikos Oikos",-"Okean Okeanologiia",-"ONCP. Old and New Concepts of Physics",-"OCzAS Ondrejov Czechoslovakia Czechoslovak Academy Sciences CAS Astronomical Institute Publications",-"ONERA ONERA TP",-"OEJV. Open European Journal on Variable Stars",-"OJA.. Open Journal of Acoustics",-"OJAS. Open Journal of Applied Sciences",-"OJBp. Open Journal of Biophysics",-"OJFD. Open Journal of Fluid Dynamics",-"OJGeo Open Journal of Geology",-"OJMic Open Journal of Microphysics",-"OLear Open Learning",-"OSID. Open Systems and Information Dynamics",-"AcOpt Optica Acta",-"OQE.. Optical and Quantum Electronics",-"OptEn Optical Engineering",-"OptFT Optical Fiber Technology",-"OptMa Optical Materials",-"OptPE Optical Physics and Engineering",-"OptQE Optical Quantum Electronics",-"OptRv Optical Review",-"OpSCN Optical Sciences Center Newsletter",-"OSAJI Optical Society of America Journal Optics and Image Science",-"OptPN Optics &",-"OptLE Optics and Lasers in Engineering",-"OPJ.. Optics and Photonics Journal",-"OptSp Optics and Spectroscopy",-"OptCo Optics Communications",-"OExpr Optics Express",-"OptLT Optics Laser Technology",-"OptL. Optics Letters",-"OptN. Optics News",-"Optik Optik",-"OpAt. Optika Atmosfery",-"OpAtO Optika Atmosfery i Okeana",-"OpSp. Optika i Spektroskopiia",-"OpMeP Optiko Mekhanicheskaia Promyshlennost",-"OCAM. Optimal Control Applications and Methods",-"OptEL Optoelectronics Letters",-"OERv. Opto-Electronics Review",-"OpPuT Optoelektronika i Poluprovodnikovaia Tekhnika",-"OrGeo Organic Geochemistry",-"OrLi. Origins of Life",-"OLEB. Origins of Life and Evolution of the Biosphere",-"Ori.. Orione",-"Orion Orion: Zeitschrift für Amateur-Astronomie",-"IGS.. Orlando FL Academic Press Inc International Geophysics Series",-"OrNav Ortung und Navigation",-"BuENS Osaka Prefecture University Bulletin Series Engineering Natural Sciences",-"OsUTR Osaka University Technology Reports",-"Osir. Osiris",-"NapCo Osservatorio Astronomico di Capodimonte Napoli Contributi Astronomici",-"TerCo Osservatorio Astronomico di Collurania Teramo Contributi",-"TerMm Osservatorio Astronomico di Collurania Teramo Memorie ed Osservazioni",-"TerNC Osservatorio Astronomico di Collurania Teramo Note e Comunicazioni",-"PadCR Osservatorio Astronomico di Padova Comunicazioni e Rassegne",-"RomCo Osservatorio Astronomico di Roma su Monte Mario Contributi Scientifici",-"TriP. Osservatorio Astronomico di Trieste Pubblicazioni",-"TreP. Osservatorio Privato Specola Ariel Treviso Italia Pubblicazione",-"MmArc Osservazioni e memorie dell'Osservatorio astrofisico di Arcetri",-"MmArS Osservazioni e memorie dell'Osservatorio astrofisico di Arcetri - Appendici",-"OsCar Osteoarthritis and Cartilage",-"OtObI Otbor i Obrabotka Informatsii",-"OtPI. Otbor i Peredacha Informatsii",-"OISNP Oxford Pergamon Press International Series on Natural Philosophy",-"OISTS Oxford Pergamon Press International Tables Selected Constants",-"OxfOO Oxford University Observatory Observations",-"OxM.. Oxidation of Metals",-"OzSE. Ozone: Science &",-"Palb. Paleobiology",-"PalOc Paleoceanography",-"PMetR Papers in Meteorological Research",-"PPh.. Papers in Physics",-"PMG.. Papers Meteorology Geophysics",-"PGC.. Papers on Global Change IGBP",-"ParC. Parallel Computing",-"Paras Parasitology",-"ParAc Particle Accelerators",-"PPhI. Particle Physics Insights",-"PaReL Pattern Recognition Letters",-"PerMS Perceptual Motor Skills",-"PZ... Peremennye Zvezdy",-"PZP.. Peremennye Zvezdy Prilozhenie",-"PMHu. Periodica Mathematica Hungarica",-"PPEE. Periodica Polytechnica Electrical Engineering",-"PPME. Periodica Polytechnica Mechanical Engineering",-"PPTE. Periodica Polytechnica Transportation Engineering",-"PerCo Perkins Observatory Contributions",-"PMO.. Perth Meridien Observations",-"PTMJ. Phase Transitions: A Multinational Journal",-"PhDT. Ph.D. Thesis",-"PhiJR Philips Journal Research",-"PhiRR Philips Research Reports",-"PhiTR Philips Technical Review",-"PMag. Philosophical Magazine",-"PMagL Philosophical Magazine Letters",-"PMagA Philosophical Magazine, Part A",-"PMagB Philosophical Magazine, Part B",-"PFP.. Philosophy and Foundations of Physics",-"Phoen Phoenix Mitteilungsblatt fuer Veraenderlichenbeobachter",-"PcPb. Photochemistry and Photobiology",-"Pg... Photogrammetria",-"PgE.. Photogrammetric Engineering",-"PgERS Photogrammetric Engineering and Remote Sensing",-"PhInt Photo Interpretation",-"PhNan Photonics and Nanostructures",-"PhSen Photonic Sensors",-"PhoSp Photonics Spectra",-"PsynR Photosynthesis Research",-"Psyn. Photosynthetica",-"PhyOJ Physcs Online Journal",-"Phy.. Physica",-"PhyA. Physica A Statistical Mechanics and its Applications",-"PhyBC Physica B+C",-"PhyB. Physica B Condensed Matter",-"PhyC. Physica C Superconductivity",-"PhyD. Physica D Nonlinear Phenomena",-"PhyE. Physica E Low-Dimensional Systems and Nanostructures",-"PEFPN Physica Energiae Fortis et Physica Nuclearis",-"PhAco Physical Acoustics",-"PhBio Physical Biology",-"PCESR Physical Chemical and Earth Sciences Research Reports",-"PCCP. Physical Chemistry Chemical Physics (Incorporating Faraday Transactions)",-"PCSE. Physical Chemistry: Science and Engineering",-"PhGeo Physical Geography",-"PPHTS Physical Properties of High Temperature Superconductors",-"PhyR. Physical Research",-"PhRv. Physical Review",-"PhRvA Physical Review A",-"PhRvB Physical Review B",-"PhRvC Physical Review C",-"PhRvD Physical Review D",-"PhRvE Physical Review E",-"PhRvL Physical Review Letters",-"PhRvI Physical Review Series I",-"PhRvS Physical Review Special Topics Accelerators and Beams",-"PRSTP Physical Review Special Topics Physics Education",-"PhRvX Physical Review X",-"PSD.. Physical Sciences Data",-"PSCEC Physical Sciences Series of the Commission of European Communities",-"PhyNr Physica Norvegica",-"PhyS. Physica Scripta",-"PhySB Physica Scripta B",-"PhST. Physica Scripta Volume T",-"PSSAR Physica Status Solidi Applied Research",-"PSSBR Physica Status Solidi B Basic Research",-"PSSCR Physica Status Solidi C Current Topics",-"PSSRR Physica Status Solidi Rapid Research Letters",-"PhySS Physica Status Solids",-"PhyL. Physic Letters",-"PhChH PhysicoChemical Hydrodynamics",-"Physi Physics",-"PCS.. Physics and Chemistry in Space",-"PhChE Physics and Chemistry of Earth",-"PCL.. Physics and Chemistry of Liquids",-"PCMLD Physics and Chemistry of Materials with Low-Dimensional Structures",-"PCMLA Physics and Chemistry of Materials with Low-Dimensional Structures Series A",-"PCMLB Physics and Chemistry of Materials with Low-Dimensional Structures Series B",-"PCMLC Physics and Chemistry of Materials with Low-Dimensional Structures Series C",-"PCM.. Physics and Chemistry of Minerals",-"PCE.. Physics and Chemistry of the Earth",-"PCEA. Physics and Chemistry of the Earth A",-"PCEB. Physics and Chemistry of the Earth B",-"PCEC. Physics and Chemistry of the Earth C",-"PCED. Physics and Chemistry of the Earth Delta",-"PEEI. Physics and Evolution of the Earth's Interior",-"PhApp Physics and its Applications",-"PTPPB Physics and Technology of Particle and Photon Beams",-"PhB.. Physics Bulletin",-"DokPh Physics - Doklady",-"PhyEd Physics Education",-"PhyEs Physics Essays",-"PCHEI Physics in Collision: High-Energy ee/ep/pp Interactions",-"PMB.. Physics in Medicine and Biology",-"PhP.. Physics in Perspective",-"PhTec Physics in Technology",-"PhyIn Physics International",-"PhLF. Physics Laser Fusion",-"PhL.. Physics Letters",-"PhLA. Physics Letters A",-"PhLB. Physics Letters B",-"PhLC. Physics Letters Section C Physics Reports C",-"PhyNY Physics New York",-"PhyN. Physics Notes",-"PAN.. Physics of Atomic Nuclei",-"PAM.. Physics of Atoms and Molecules",-"PhFl. Physics of Fluids",-"PhFlB Physics of Fluids B",-"PhLRv Physics of Life Reviews",-"PLDS. Physics of Low-Dimensional Structures",-"PhMet Physics of Metals",-"PMM.. Physics of Metals and Metallography",-"PPN.. Physics of Particles and Nuclei",-"PPNL. Physics of Particles and Nuclei Letters",-"PhPl. Physics of Plasmas",-"PhQE. Physics of Quantum Electronics",-"PSL.. Physics of Solids and Liquids",-"PEPI. Physics of the Earth and Planetary Interiors",-"PhSS. Physics of the Solid State",-"PTF.. Physics of Thin Films",-"PWP.. Physics of Wave Phenomena",-"PhR.. Physics Reports",-"PRI.. Physics Research International",-"PhT.. Physics Today",-"PhyU. Physics Uspekhi",-"PhyW. Physics World",-"PCTM. Physikalisch-Chemische Trenn- und Messmethoden",-"PhyBl Physikalische Blötter",-"PhyG. Physikalische Gesellschaft",-"PhyGZ Physikalische Gesellschaft Zürich",-"PhyZ. Physikalische Zeitschrift",-"PKM.. Physik der Kondensierten Materie",-"PhuZ. Physik in unserer Zeit",-"PhyCP Physiological Chemistry and Physics",-"PhyM. Physiological Measurement",-"PhylS Physiologist Supplement",-"PAZh. Pis ma Astronomicheskii Zhurnal",-"PZETF Pis ma Zhurnal Eksperimental noi i Teoreticheskoi Fiziki",-"PZhTF Pis ma Zhurnal Tekhnischeskoi Fiziki",-"PlAst Planetary Astronomy",-"PlR.. Planetary Report",-"PlSci Planetary Science",-"PSRD. Planetary Science Research Discoveries",-"PCPhy Plant and Cell Physiology",-"PFR.. Plasma and Fusion Research",-"PCPP. Plasma Chemistry and Plasma Processing",-"PlPh. Plasma Physics",-"PPCF. Plasma Physics and Controlled Fusion",-"PlPhR Plasma Physics Reports",-"PlPo. Plasmas and Polymers",-"PlST. Plasma Science and Technology",-"PSST. Plasma Sources Science Technology",-"PRFVT Plastiques Renforces Fibres de Verre Textile",-"PLoSB PLoS Biology",-"PLoSC PLoS Clinical Trials",-"PLSCB PLoS Computational Biology",-"PLoSG PLoS Genetics",-"PLoSM PLoS Medicine",-"PLoSN PLoS Neglected Tropical Diseases",-"PLoSO PLoS ONE",-"PLoSP PLoS Pathogens",-"PMCPA PMC Physics A",-"PMCPB PMC Physics B",-"PMCPC PMC Physics C",-"PMTF. PMTF Zhurnal Prikladnoi Mekhaniki i Tekhnicheskoi Fiziki",-"nraop National Radio Astronomy Observatory Press Release",-"PnGid Pnevmatika i Gidravlika",-"noaop NOAO Proposal",-"PolSc Polar Science",-"PolSi Poliarnye Siianiia",-"PSSNN Poliarnye Siianiia i Svechenie Nochnogo Neba",-"PASAM Polish Academy of Science Arch Mech",-"PASAS Polish Academy of Science Artificial Satellites",-"PASIG Polish Academy of Sciences Institute of Geophysics Publications",-"PASTA Polish Academy of Sciences Theory Aggregation Coagulation",-"PJMPE Polish Journal of Medical Physics And Engineering",-"PCZNN Politechnika Czestochowska Zeszyty Naukowe Nauki Techniczne Mechanika",-"PGZNM Politechnika Gdanska Zeszyty Naukowe Mechanika",-"PSZNM Politechnika Slaska Zeszyty Naukowe Mechanika",-"PolAt Pollution Atmospherique",-"CraR. Polskie Towarzyslwo Milosnikow Astronomii",-"PolTM Poluprovodnikovaia Tekhnika i Mikroelektronika",-"PolPP Poluprovodnikovye Pribory i ikh Primenenie",-"Poly. Polymer",-"PoCom Polymer Composites",-"PolPh Polymer Physics",-"PPTEn Polymer-Plastics Technology and Engineering",-"PomAK Pomiary Automatyka Kontrola",-"PATi. Popular Astronomisk Tidsskrift",-"PA... Popular Astronomy",-"PorMe Poroshkovaia Metallurgiia",-"PoAn. Postepy Astronautyki",-"PoAst Postepy Astronomii Krakow",-"PSci. Pour la Science",-"PDiff Powder Diffraction",-"PUAMA Poznan Uniwersytet im Adama Mickiewicza Seria Akustyka",-"PUAMF Poznan Uniwersytet im Adama Mickiewicza Seria Fizyka",-"PrAst Practical Astronomy",-"NaiRe Pradesh State Observatory Naini Tal Insia Reprints",-"PraAc Prague Academia",-"Prama Pramana",-"PreR. Precambrian Research",-"Prib. Priborostroenie",-"PriTE Pribory i Tekhnika Eksperimenta",-"PriMM Prikladnaia Matematika i Mekhanika",-"PriMP Prikladnaia Matematika i Programmirovanie",-"PriM. Prikladnaia Mekhanika",-"PPPLR Princeton Plasma Physics Laboratory Report",-"Prir. Priroda",-"Priv. Private Communication",-"PrEM. Probabilistic Engineering Mechanics",-"PrAiA Problemy Arktiki i Antarktiki",-"PrBio Problemy Bioniki",-"PrDRV Problemy Difraktsii i Rasprostraneniia Voln",-"PrFA. Problemy Fiziki Atmosfery",-"PrFKL Problemy Iadernoi Fiziki i Kosmicheskikh Luchei",-"PrKFi Problemy Kosmicheskoi Fiziki",-"PrMas Problemy Mashinostroeniia",-"PrPro Problemy Prochnosti",-"PrSP. Problemy Sluchainogo Poiska",-"PrTE. Problemy Tekhnicheskoi Elektrodinamiki",-"PrTGE Problemy Teorii Gravitatsii i Elementarnykh Chastits",-"PrTPT Problemy Teploenergetiki i Prikladnoi Teplofiziki",-"PJA.. Proceeding of the Japan Academy",-"PJAA. Proceeding of the Japan Academy, Series A",-"PJAB. Proceeding of the Japan Academy, Series B",-"PBioS Proceedings: Biological Sciences",-"PMPES Proceedings: Mathematical, Physical and Engineering Sciences",-"PAMS. Proceedings of the American Mathematical Society",-"PAPhS Proceedings of the American Philosophical Society",-"PASAu Proceedings of the Astronomical Society of Australia",-"PCAS. Proceedings of the California Academy of Sciences",-"PCPS. Proceedings of the Cambridge Philosophical Society",-"PEMS. Proceedings of the Edinburgh Mathematical Society",-"PIASE Proceedings of the Indian Academy of Science, Earth and Planetary Sciences",-"PINSA Proceedings of the Indian National Science Academy Part A",-"PINSB Proceedings of the Indian National Science Academy Part B",-"PIGP. Proceedings of the Institute of General Physics, Adademy of the Sciences of Russia",-"PILOM Proceedings of the International Latitude Observatory at Mizusawa",-"PIRE. Proceedings of the IRE",-"PNAS. Proceedings of the National Academy of Sciences",-"PNAS. Proceedings of the National Academy of Sciences USA",-"PNAS. Proceedings of the National Academy of Sciences of the USA",-"PNSC. Proceedings of the National Science Council",-"PNSBP Proceedings of the National Society of Black Physicists",-"PPS.. Proceedings of the Physical Society",-"PPSA. Proceedings of the Physical Society A",-"PPSB. Proceedings of the Physical Society B",-"PPSL. Proceedings of the Physical Society of London",-"PRIAN Proceedings of the Research Institute of Atmospherics, Nagoya University",-"PRIAA Proceedings of the Royal Irish Academy Section A",-"PRNAS Proceedings of the Royal Netherlands Academy of Arts and Sciences",-"PSEBM Proceedings of the Society for Experimental Biology and Medicine",-"PrVP. Proceedings of Vibration Problems",-"PELIS Program: electronic library &",-"PrAeS Progress in Aerospace Sciences",-"PrAA. Progress in Astronautics and Aeronautics",-"PrA.. Progress in Astronomy",-"PABei Progress in Astronomy",-"PBB.. Progress in Biochemistry and Biophysics",-"PBBC. Progress in Biophysics and Biophysical Chemistry",-"PBMB. Progress in Biophysics and Molecular Biology",-"PrECS Progress in Energy and Combustion Science",-"PLTP. Progress in Low Temperature Physics",-"PrMS. Progress in Materials Science",-"PMatP Progress in Mathematical Physics",-"PMRP. Progress in Medical Radiation Physics",-"PMetP Progress in Metal Physics",-"PNSci Progress in Natural Science",-"PrOce Progress in Oceanography",-"POrCo Progress in Organic Coatings",-"PrPNP Progress in Particle and Nuclear Physics",-"PPcPp Progress in Photochemistry and Photophysics",-"PPGeo Progress in Physical Geography",-"PrPh. Progress in Physics",-"PQE.. Progress in Quantum Electronics",-"PrSS. Progress In Surface Science",-"PTCP. Progress in Theoretical Chemistry and Physics",-"PTEP. Progress of Theoretical and Experimental Physics",-"PThPh Progress of Theoretical Physics",-"PThPS Progress of Theoretical Physics Supplement",-"ProTe Promyshlennaia Teplotekhnika",-"PrEx. Propellants and Explosives",-"PrExP Propellants and Explosives Pyrotechnics",-"PMMin Proper Motion Survey, University of Minnesota",-"rxte pRXTE Proposal",-"sptz pSpitzer Proposal",-"suba pSubaru Proposal",-"PUFir Pubblicazioni della R. Universita degli studi di Firenze",-"PSAIL Pubblicazioni della Stazione Astronomica Internazionale di Latitudine",-"POMil Pubblicazioni dell'Osservatorio Astronomico di Milano-Merate",-"POPad Pubblicazioni dell'Osservatorio Astronomico di Padova",-"POPal Pubblicazioni dell'Osservatorio Astronomico di Palermo",-"POTor Pubblicazioni Varie Fuori Serie dell'Osservatorio Astronomico di Torino",-"PKCat Publ. House Czech. Acad. Sci.",-"PMad. Publicacion Facultad de Ciencias Madrid",-"POClu Publicatiile Observatorului Astronomical Universitatii din Cluj",-"POPar Publication de l'Observatoire de Paris Notes et Informations",-"POStr Publication de l'Observatoire de Strasbourg",-"PUSK. Publication der Koeniglichen Sternwarte in Kiel",-"PULei Publicationen der K. Universitoats-Sternwarte zu Leipzig",-"PCARS Publication of COMU Astrophysics Research Center",-"PKAS. Publication of Korean Astronomical Society",-"PPCAS Publication of the Pomona College Astronomical Society",-"PIAGL Publications de l'Institut d'Astronomie et de Geophysique Georges Lemaitre",-"POBeo Publications de l'Observatoire Astronomique de Beograd",-"POBor Publications de l'Observatoire de l'Universite de Bordeaux",-"POTou Publications de l'Observatoire de Toulouse",-"PLAGL Publications du Laboratoire d'Astronomie et de Geodesie de l'Universite de Louvain",-"PDHO. Publications of Debrecen Heliophysical Observatory",-"POBol Publications of dell'Osservatorio Astronomie de Bologna",-"PLawO Publications of Laws Observatory, University of Missouri",-"PLicO Publications of Lick Observatory",-"POMic Publications of Michigan Observatory",-"PCat. Publications of Osservatorio Astrofisico di Catania",-"PASK. Publications of the Academy of Science Kasakstan Sect. Astrobotanics",-"PAllO Publications of the Allegheny Observatory of the University of Pittsburgh",-"PAASA Publications of the Astronomical and Astrophysical Society of America",-"PAICU Publications of the Astronomical Institute of the Charles University",-"PAICz Publications of the Astronomical Institute of the Czechoslovak Academy of Sciences",-"PUAms Publications of the Astronomical Institute of the University of Amsterdam",-"PBrn. Publications of the Astronomical Institute of the University of Borneo",-"POHel Publications of the Astronomical Observatory Helsinki",-"PAOS. Publications of the Astronomical Observatory of Sarajevo",-"POMin Publications of the Astronomical Observatory University of Minnesota",-"PASA. Publications of the Astronomical Society of Australia",-"PASJ. Publications of the Astronomical Society of Japan",-"PASP. Publications of the Astronomical Society of the Pacific",-"PASPS Publications of the Astronomical Society of the Pacific Supplement",-"PASRB Publications of the Astronomical Society Rudjer Boskovic",-"PADEU Publications of the Astronomy Department of the Eotvos Lorand University",-"PAIB. Publications of the Astronomy Institute of Bonn",-"PAB.. Publications of The Astrophysics Branch Ottawa",-"PBeiO Publications of the Beijing Astronomical Observatory",-"PBosO Publications of the Bosscha Observatory Lembang Indonesia",-"PCinO Publications of the Cincinnati Observatory",-"PCooO Publications of the Cook Observatory",-"PDDO. Publications of the David Dunlap Observatory",-"PDAUC Publications of the Department of Astronomy University of Chile",-"PDAO. Publications of the Dominion Astrophysical Observatory Victoria",-"PDO.. Publications of the Dominion Observatory Ottawa",-"PDreO Publications of the Dresden Observatory",-"PFAO. Publications of the Flower Astronomical Observatory",-"PGLO. Publications of the Goethe Link Observatory",-"PGooO Publications of the Goodsell Observatory, Carleton College",-"ILOMP Publications of the International Latitude Observatory at Mizusawa",-"PIstO Publications of the Istanbul University Observatory",-"PGro. Publications of the Kapteyn Astronomical Laboratory Groningen",-"PKirO Publications of the Kirkwood Observatory of Indiana University",-"PAth. Publications of the Laborotory of Astronomy University of Athens",-"PMcCO Publications of the Leander McCormick Observatory",-"PManO Publications of the Manila Observatory",-"PMunO Publications of the Munich Observatory",-"PNAOC Publications of the National Astronomical Observatories of China",-"PNAOJ Publications of the National Astronomical Observatory of Japan",-"POLyo Publications of the Observatoire de Lyon",-"PGenA Publications of the Observatoire Geneve Series A",-"PGenB Publications of the Observatoire Geneve Series B",-"POHP. Publications of the Observatoire Haute-Provence",-"POANC Publications of the Observatorie Astronomie Nacional Cerro Calan",-"POIst Publications of the Observatory Astronomie University Istambul",-"POslO Publications of the Oslo Observatory",-"POVRO Publications of the Owens Valley Observatory",-"PPMtO Publications of the Purple Mountain Observatory",-"PRCO. Publications of the Riverview College Observatory",-"PROE. Publications of the Royal Observatory of Edinburgh",-"PSAO. Publications of the Shaanxi Astronomical Observatory",-"PShaO Publications of the Shaanxi Astronomy Observatory",-"PSprO Publications of the Sproul Observatory",-"PSSAI Publications of the Sternberg State Astronomical Institute",-"PTarO Publications of the Tartu Astrofizica Observatory",-"PTasO Publications of the Tashkent Astronomical Observatory",-"PUPFA Publications of the University of Pennsylvania Flower Astronomical Observatory",-"PUSNO Publications of the U.S. Naval Observatory Second Series",-"PVVO. Publications of the Van Vleck Observatory",-"PVasO Publications of the Vassar College Observatory",-"PWasO Publications of the Washburn Observatory",-"PYerO Publications of the Yerkes Observatory",-"PYunO Publications of the Yunnan Observatory",-"PWHHO Publications of West Hendon House Observatory, Sunderland",-"PSCDS Publication Speciale du Centre de Donnees Stellaires",-"POxf. Publications University of Oxford Department of Astrophysics",-"PUS.. Public Understanding of Science",-"PKUJ. Publikationen der Kaiserlichen Universitaets-Sternwarte Jurjew",-"PAIKH Publikationen des Astrophysikalischen Instituts Koenigstuhl-Heidelberg",-"POPot Publikationen des Astrophysikalischen Observatoriums zu Potsdam",-"PCopO Publikationer og mindre Meddeler fra Kobenhavns Observatorium",-"PGAOI Pulkovo Glavnaia Astronomicheskaia Observatoriia Izvestiia",-"PApCh Pure &",-"PApGe Pure and Applied Geophysics",-"PApPh Pure and Applied Physics",-"PApOp Pure Applied Optics",-"QUnJ. Qinghua University Journal",-"xmm.. XMM-Newton Press Release",-"xmm.. XMM-Newton Proposal",-"QREI. Quality Reliability Engineering International",-"QuFin Quantitative Finance",-"QuSOp Quantum and Semiclassical Optics",-"QuEle Quantum Electronics",-"QuIP. Quantum Information Processing",-"QuOpt Quantum Optics",-"QBSA. Quarterly Bulletin on Solar Activity",-"QJMAM Quarterly Journal of Mechanics and Applied Mathematics",-"QJRAS Quarterly Journal of the Royal Astronomical Society",-"QJRMS Quarterly Journal of the Royal Meteorological Society",-"QApMa Quarterly of Applied Mathematics",-"QRBio Quarterly Reviews of Biophysics",-"QuInt Quaternary International",-"QuRes Quaternary Research",-"QSRv. Quaternary Science Reviews",-"Quest Quest",-"RadRe Radcliffe Observatory Pretoria South Africa Reprints",-"Rad.. Radiant, Journal of the Dutch Meteor Society",-"REB.. Radiation and Environmental Biophysics",-"RadEf Radiation Effects",-"REDS. Radiation Effects and Defects in Solids",-"RaPC. Radiation Physics and Chemistry",-"RaRe. Radiation Research",-"RaEE. Radio and Electronic Engineer",-"Radel Radioehlektronika",-"REEP. Radio Engineering and Electronic Physics",-"RaF.. Radiofizika",-"RaSol Radioizluchenie Solntsa",-"RPRA. Radio Physics and Radio Astronomy",-"RaRLJ Radio Research Laboratory, Journal",-"RaRLR Radio Research Laboratory, Review",-"RaSc. Radio Science",-"RaScB Radio Science Bulletin",-"RaScS Radio Science Supplement",-"RaT.. Radioteknika",-"RaEl. Radiotekhnika i Elektronika",-"RERE. Radiotekhnika i Elektronika Radio Engineering Electronic Physics",-"RatK. Radiotekhnika Kharkov",-"RTRE. Radiotekhnika Tecommunications Radio Engineering Radio Engineering",-"RaPro Raschety Prochnost",-"RF... Raumfahrtforschung",-"RCAEn RCA Engineer",-"RCARv RCA Review",-"RTI.. Real-Time Imaging",-"RDCMP Recent Development in Condensed Matter Physics",-"RRDAP Recent Research Development in Applied Physics",-"RRDBC Recent Research Development in Biophysical Chemistry",-"RRDBB Recent Research Development in Biophysics and Biochemistry",-"RRDCP Recent Research Development in Chemical Physics",-"RRDPC Recent Research Development in Physical Chemistry",-"RRDP. Recent Research Development in Physics",-"RRDPF Recent Research Development in Physics of Fluids",-"RRDSP Recent Research Development in Statistical Physics",-"ReAA. Recherches Aeronautiques et Aerospatiales",-"RAOU. Recherches Astronomiques de l'Observatoire d'Utrecht",-"RZh.. Referationyj Zhurnal",-"RJEHM Regional Journal of Energy Heat and Mass Transfer",-"RCD.. Regular and Chaotic Dynamics",-"RemS. Remote Sensing",-"RSEMS Remote Sensing Electro Magnetic Spectrum",-"RSEnv Remote Sensing of Environment",-"RSQ.. Remote Sensing Quarterly",-"Renor Renormalization",-"RISRJ Report Ionosphere Space Research Japan",-"HarOR Report of the Committee of the Overseers of Harvard College appointed to visit the Observatory",-"RNAOJ Report of the National Astronomical Observatory of Japan",-"RSPUT Report Series of the Department of Physics and Science, University of Turku",-"YalRY Reports for the year presented by the Board of Managers of the Observatory of Yale University to the President and Fellows",-"ROLun Reports of the Lund Observatory",-"RpMP. Reports on Mathematical Physics",-"RPPh. Reports on Progress in Physics",-"RTAMS Representation Theory of the American Mathematical Society",-"BeiRe Reprints Beijing Astronomical Observatory Academia Sinica",-"ROCi. Republic Observatory Johannesburg Circular",-"ChPAS Republic of China National Science Council Proceedings Applied Sciences",-"RBSEJ Research Based Science Education Journal",-"RAA.. Research in Astronomy and Astrophysics",-"ReNEv Research in Nondestructive Evaluation",-"RSTEd Research in Science and Technological Education",-"RScEd Research in Science Education",-"RJPh. Research Journal of Physics",-"RLEMR Research Laboratory Engineering Materials Report",-"RLPME Research Laboratory Precision Machinery Electronics Bulletin",-"RLOpt Research Letters in Optics",-"RLPhy Research Letters in Physics",-"RMA.. Research Measurement Approach",-"RNOST Research News &",-"RPFSU Research Papers Faculty of Materials Science and Technology Slovak University of Technology",-"RRP.. Research Reports in Physics",-"RTP.. Research Trends in Physics",-"RNAO. Resultados del Observatorio Nacional Argentino",-"ROCor Resultados del Observatorio Nacional Argentino en Cordoba",-"ResPh Results in Physics",-"RAROC Results of Astronomical Observations made at the Royal Observatory, Cape of Good Hope",-"RMROC Results of Meridian Observations made at the Royal Observatory, Cape of Good Hope",-"RDR.. Review of Derivatives Research",-"RvPCJ Review of Physical Chemistry of Japan",-"RvPT. Review of Physics in Technology",-"RScI. Review of Scientific Instruments",-"RvAqS Reviews in Aquatic Sciences",-"RvMaP Reviews in Mathematical Physics",-"RvMA. Reviews in Modern Astronomy",-"RvGeo Reviews of Geophysics",-"RvGSP Reviews of Geophysics and Space Physics",-"RvGeS Reviews of Geophysics Supplement",-"RvMin Reviews of Mineralogy",-"RvMP. Reviews of Modern Physics",-"RvMPS Reviews of Modern Physics Supplement",-"RvOp. Reviews of Optics",-"RvPP. Reviews of Plasma Physics",-"RvRRL Reviews of the Radio Research Laboratory",-"RvA.. Revista Astronomica Organo de la Asociacion Argengina Amigos de la Astronomia Buenos Aires",-"RBrFi Revista Brasileira de Fisica",-"RvCF. Revista Colombiana de Fisica",-"IORP. Revista do observatorio : publicacao mensal do Imperial Observatorio do Rio de Janeiro",-"RMxAA Revista Mexicana de Astronomia y Astrofisica",-"RMxF. Revista Mexicana de Fisica",-"RMxFE Revista Mexicana de Fisica E",-"RMxFS Revista Mexicana de Fisica Supplement",-"RvMad Revista Real Acad. Ciencias Exact. Fis. Nat. Madrid",-"RTrTe Revista Transporturilor si Telecomunicatiilor",-"AerRv Revue Aerospatiale",-"RvAc. Revue d'Acoustique",-"RvGPG Revue de Geographie Physique et de Geologie Dynamique",-"RvGDG Revue de Geologie Dynamique et de Geographie Physique",-"RvPA. Revue de Physique Appliquee",-"RvPD. Revue du Palais de la Decouverte",-"RvFEQ Revue Francaise de l'Electricite Quarter",-"RFrM. Revue Francaise de Mecanique",-"RFrMQ Revue Francaise de Mecanique Quarter",-"RRMPA Revue Roumaine de Mathematiques Pures et Appliquees",-"RvRP. Revue Roumaine de Physique",-"RvRST Revue Roumaine des Sciences Techniques Serie de Mecanique Appliquee",-"RST.. Revue Scientifique et Technique CECLES CERS",-"RvT.. Revue Technique Thomson CSF",-"RNISZ Rezul taty Nabliudenii Iskusstvennykh Sputnikov Zemli",-"RWTHA Rheinisch Westfaelische Technische Hochschule Aerodynamisches Institut Abhandlungen",-"AcRhe Rheologica Acta",-"RA... Ricerche Astronomiche",-"RIzZi Riga Izdatel Zinatne",-"Rise. Rise Hvezd",-"RRA.. River Research and Applications",-"RIG.. Rivista Italiana di Geofisica",-"RIGSA Rivista Italiana di Geofisica e Scienze Affini",-"RvTS. Rivista Tecnica Selenia",-"Robot Robotica",-"RMRE. Rock Mechanics and Rock Engineering",-"RMFMR Rock Mechanics Felsmechanik Mecanique des Roches",-"Roczn Rocznik Astronomiczny Observatorjum Krakowskiego Krakow",-"RoAJ. Romanian Astronomical Journal",-"RoJPh Romanian Journal of Physics",-"RoRPh Romanian Reports in Physics",-"RoIE. Rossiiskaia Akademiia Nauk Izvestiia Energetika",-"RoIMZ Rossiiskaia Akademiia Nauk Izvestiia Mekhanika Zhidkosti i Gaza",-"RoISF Rossiiskaia Akademiia Nauk Izvestiia Seriia Fizicheskaia",-"RoDok Rossijskaya Akademiya Nauk Doklady",-"RoIMT Rossijskaya Akademiya Nauk Izvestiya Mekhanika Tverdogo Tela",-"RoIzF Rossijskaya Akademiya Nauk Izvestiya Seriya Fizicheskaya",-"RWPWZ Rostock Wilhelm Pieck Universitaet Wissenschaftliche Zeitschrift Mathematisch Naturwissenschaftliche Reihe",-"PVSS. Royal Astronomical Society of New Zealand Publications of Variable Star Section",-"VSSCi Royal Astronomical Society of New Zealand Variable Star Section Circulars",-"VSSRe Royal Astronomical Society of New Zealand Variable Star Section Reprints",-"VSSSC Royal Astronomical Society of New Zealand Variable Star Section Special Circulars",-"RGOB. Royal Greenwich Observatory Bulletin",-"RGOO. Royal Greenwich Observatory Observations",-"ROAn. Royal Observatory Annals",-"CapMi Royal Observatory Cape Mimeogram",-"CoRSE Royal Society Edinburgh Communications Physical Sciences",-"RSCT. Royal Society of Canada Transactions",-"RSEPS Royal Society of Edinburgh Proceedings Section",-"RSET. Royal Society of Edinburgh Transactions",-"RSPTA Royal Society of London Philosophical Transactions Series A",-"RSPTB Royal Society of London Philosophical Transactions Series B",-"RSPT. Royal Society of London Philosophical Transactions Series I",-"RSPSA Royal Society of London Proceedings Series A",-"RSPSB Royal Society of London Proceedings Series B",-"RSPS. Royal Society of London Proceedings Series I",-"RoIn. Rozprawy Inzynierskie",-"RoIET Rozprawy Inzynierskie Engineering Transactions",-"asc.. Space Telescope ASC Instrument Science Report",-"nicm. Space Telescope NICMOS Instrument Science Report",-"stis. Space Telescope STIS Instrument Science Report",-"wfc.. Space Telescope WFC Instrument Science Report",-"wfpc. Space Telescope WFPC2 Instrument Science Report",-"Ruimt Ruimtevaart",-"RuCRv Russian Chemical Reviews",-"RuGG. Russian Geology and Geophysics",-"RJET. Russian Journal of Engineering Thermophysics",-"RJMP. Russian Journal of Mathematical Physics",-"RJPC. Russian Journal Physical Chemistry",-"RJPCA Russian Journal Physical Chemistry A",-"RJTAM Russian Journal Theoretical and Applied Mechanics",-"RuMaS Russian Mathematical Surveys",-"RuMet Russian Metallurgy",-"RuPhJ Russian Physics Journal",-"RALR. Rutherford Appleton Laboratory Report",-"Sadha Sadhana",-"STVF. Samoletostroenie Tekhnika Vozdushnogo Flota",-"SAMPJ SAMPE Journal",-"SAMPQ SAMPE Quarterly",-"UISTS San Diego CA Univelt Inc Science Technology Series",-"MaMeA Sankt Peterburgskii Universitet Vestnik Seriia Matematika Mekhanika Astronomiia",-"SAOSR SAO Special Report",-"asd.. Astrophysics Software Database",-"ascl. Astrophysics Source Code Library",-"SatCo Satellite Communications",-"SBARM SBARMO Bulletin",-"SbMat Sbornik: Mathematics",-"SJMet Scandinavian Journal of Metallurgy",-"SUVSR Scandinavian Union of Amateur Astronomers Variable Star Section",-"ScReE Scholarly Research Exchange",-"SNG.. Schweizerische Naturforschende Gesellschaft",-"Sci.. Science",-"SCSA. Science and Culture Series: Astrophysics",-"SCSP. Science and Culture Series: Physics",-"SECM. Science and Engineering of Composite Materials",-"STAdM Science and Technology of Advanced Materials",-"SCSMP Science China Series Mathematics Physics Astronomy Technological Sciences",-"SciDi Science Dimension",-"SciEd Science Education",-"ScEdR Science Education Research",-"SFCh. Science Foundation in China",-"ScChA Science in China A: Mathematics",-"ScChB Science in China B: Chemistry",-"ScChC Science in China C: Life Sciences",-"ScChD Science in China D: Earth Sciences",-"ScChE Science in China E: Technological Sciences",-"ScChF Science in China F: Information Sciences",-"ScChG Science in China G: Physics and Astronomy",-"SISN. Science Information Systems Newsletter",-"SciN. Science News",-"ScTEn Science of the Total Environment",-"ScPr. Science Progress",-"Scis. Sciences",-"SciB. Scientia (Bologna)",-"SciSn Scientia Sinica",-"SSPMA Scientia Sinica Physica, Mechanica &",-"SSSMP Scientia Sinica Series Mathematical Physical Technical Sciences",-"SciAm Scientific American",-"SMS.. Scientific Modeling and Simulation SMNS",-"Scim. Scientometrics",-"SRToh Sci. Rep. Tohoku Univ. Eighth Ser.",-"SFSN. Scripta Faculty Science Nat. Ujep Brunensis Physica",-"ScM.. Scripta Metallurgica",-"ScMM. Scripta Metallurgica et Materialia",-"SedG. Sedimentary Geology",-"Sedim Sedimentology",-"SeiKa Seikei-Kakou",-"BSSA. Seismological Society America Bulletin",-"SEGeo Seismology and Exploration Geophysics",-"STSSP Selected Topics in Solid State Physics",-"Semic Semiconductors",-"SeScT Semiconductor Science Technology",-"SeSTS Semiconductor Science Technology Supplement",-"TrKra Seminar Kraevym Zadacham Trudy",-"SCB.. Seminars in Cancer Biology",-"SDia. Seminars in Dialysis",-"GEOCS Semi-Regular Variables",-"SenAR Sendai Astronomiaj Raportoj",-"SenIm Sensing and Imaging",-"SPTS. Sensor Physics and Technology Series",-"SeRv. Sensor Review",-"SeAc. Sensors and Actuators",-"SeAcA Sensors and Actuators A Physical",-"SeAcB Sensors and Actuators B Chemical",-"SAERI Seoul Korea Atomic Energy Research Institute",-"SanS. Separata Universidad de Chile Departamento de Astronomia Santiago",-"SerAJ Serbian Astronomical Journal",-"AnShO Shanghai Observatory Annals",-"SV... Shock and Vibration",-"SVD.. Shock Vibration Digest",-"SVICB Shock Vibration Information Center Shock Vibration Bulletin",-"SVICP Shock Vibration Information Center Shock Vibration Computer Programs",-"SVICD Shock Vibration Information Center Shock Vibration Digest",-"SVICI Shock Vibration Information Center Shock Vibration Inform Digest",-"ShWav Shock Waves",-"SJAM. SIAM Journal of Applied Mathematics",-"SJCO. SIAM Journal of Control Optimization",-"SJMA. SIAM Journal of Mathematical Analysis",-"SJADS SIAM Journal on Applied Dynamical Systems",-"SJNA. SIAM Journal on Numerical Analysis",-"SIAMR SIAM Review",-"SiMaJ Siberian Mathematical Journal",-"SiFTZ Sibirskii Fiziko Tekhnicheskii Zhurnal",-"JCMSI SICE Journal of Control, Measurement, and System Integration",-"SidM. Sidereal Messenger",-"SIDPQ SID Proceedings Quarter",-"SiFoE Siemens Forschungs und Entwicklungsberichte",-"SIGMA SIGMA",-"Sig.. Signal",-"SigPr Signal Processing",-"Simul Simulation",-"SiMol Single Molecules",-"SZPA. SIRIUS. Zeitschrift fuer Populaere Astronomie",-"Situ. Situ",-"SkInq Skeptical Inquirer",-"SRT.. Skin Research and Technology",-"SkyN. Sky News",-"SlaOb Slaboproudy Obzor",-"SJCE. Slovak Journal of Civil Engineering",-"SBE.. Small Business Economics",-"SMaS. Smart Material Structures",-"Smith Smithsonian",-"SCoA. Smithsonian Contributions to Astrophysics",-"SCoK. Smithsonian Contributions to Knowledge",-"SmCES Smithsonian Contributions to the Earth Sciences",-"SSS.. Social Studies of Science",-"MSAIQ Societa Astronomica Italiana Memorie Quarter",-"SFPTB Societe Francaise de Photogrammetrie et de Teledetection Bulletin",-"SASS. Society for Astronomical Sciences Annual Symposium",-"SEEJ. Society of Environmental Engineers Journal",-"SIAM. Society of Industrial and Applied Mathematics",-"SIBAN Sofia Izdatel Bolgarskoi Akademii Nauk",-"SMat. Soft Matter",-"SSSAJ Soil Science Society of America Journal",-"SoCe. Solar Cells",-"SoEn. Solar Energy",-"SoEnM Solar Energy Materials",-"SoPh. Solar Physics",-"SoSyR Solar System Research",-"STERJ Solar Terrestrial and Environmental Research Japan",-"SolE. Solid Earth",-"SolED Solid Earth Discussions",-"SMArc Solid Mechanics Archives",-"SSCom Solid State Communications",-"SSEle Solid State Electronics",-"SSIon Solid State Ionics",-"SSNMR Solid State Nuclear Magnetic Resonance",-"SSPAR Solid State Physics Advances in Research and Applications",-"SSPAS Solid State Physics Advances in Research and Applications Supplement",-"SSSci Solid State Sciences",-"SSTec Solid State Technology",-"BSolD Solnechnye Dann. Bull. Akad. Nauk SSSR",-"SoKie Sonderdrucke der Sternwarte Kiel",-"SoMue Sonderdrucke Universitaet Muenster Astronomisches Institut",-"Sonne Sonne",-"SoShe Soobshchenie Shemakhinskoj Astrofizicheskoj Observatorii",-"SoByu Soobshcheniya Byurakanskoj Observatorii Akademiya Nauk Armyanskoj SSR Erevan",-"SoSht Soobshcheniya Gosudarstvennogo Astronomicheskogo Instituta",-"SoSAO Soobshcheniya Spetsial'noj Astrofizicheskoj Observatorii",-"SMTS. Soprotivlenie Materialov i Teoriia Sooruzhenii",-"SSHMP Sources and Studies in the History of Mathematics and Physical Sciences",-"SHMPS Sources in the History of Mathematics and Physical Sciences",-"SAAOC South African Astronomical Observatory Circular",-"SAAOR South African Astronomical Observatory Republic",-"SAJPh South African Journal of Physics",-"SAJSc South African Journal of Science",-"SouSt Southern Stars",-"IBSAE Sovetskaia Antarkticheskaia Ekspeditsiia Informatsionnyi Byulleten",-"SovAe Soviet Aeronomii",-"SvApM Soviet Applied Mechanics",-"SvA.. Soviet Astronomy",-"SvAL. Soviet Astronomy Letters",-"JETP. Soviet Journal of Experimental and Theoretical Physics",-"JETPL Soviet Journal of Experimental and Theoretical Physics Letters",-"SvJNP Soviet Journal of Nuclear Physics",-"SvJOT Soviet Journal of Optical Technology",-"SvJPP Soviet Journal of Plasma Physics",-"SvJQE Soviet Journal of Quantum Electronics",-"SvPAC Soviet Physics Acoustics",-"SvPhA Soviet Physics Astronomy",-"SvPC. Soviet Physics Crystallography",-"SPhD. Soviet Physics Doklady",-"SvPhJ Soviet Physics Journal",-"SvPS. Soviet Physics Semiconductors",-"SvPSS Soviet Physics Solid State",-"SPTP. Soviet Physics Technical Physics",-"SvPhU Soviet Physics Uspekhi",-"SvRP. Soviet Radiophysics",-"SSRvA Soviet Scientific Reviews A Physics Reviews",-"SSRvC Soviet Scientific Reviews C Mathematical Physics Reviews",-"SSRvD Soviet Scientific Reviews D Physicochemical Biology Reviews",-"SSRvE Soviet Scientific Reviews E Astrophysics and Space Physics Reviews",-"SvTRv Soviet Technology Reviews",-"Space Space",-"SSPRv Space and Solar Power Review",-"SpCoB Space Communication Broadcasting",-"SpCom Space Communications",-"SpEd. Space Education",-"SpFl. Spaceflight",-"SLSci Space Life Sciences",-"SpMar Space Markets",-"SpMME Space Medicine Medical Engineering",-"SpPol Space Policy",-"SpPow Space Power",-"SPRMD Space Power - Resources, Manufacturing and Development",-"SpRBu Space Research Bulgaria",-"SpReT Space Research Today",-"SSI.. Space Science Instrumentation",-"SSRv. Space Science Reviews",-"SpT.. Space Technology",-"STICA Space Technology Industrial and Commercial Applications",-"STECF Space Telescope European Coordinating Facility Newsletter",-"Spvw. Spaceview",-"SpWea Space Weather",-"SpWd. Space World",-"SpWdU Space World U",-"SpWdW Space World W",-"SpWdY Space World Y",-"Spark Spark, the AAS Education Newsletter",-"VatAR Specola Astronomica Vaticana Annual Reports",-"AtlSV Specola Astronomica Vaticana Atlas Stellarum Variabilium",-"VatCo Specola Astronomica Vaticana Comunicazione",-"VatMA Specola Astronomica Vaticana Miscellanea Astronomica",-"VatPS Specola Astronomica Vaticana Pubblicazioni Serie Seconda",-"VatRS Specola Astronomica Vaticana Ricerche Spettroscopiche",-"VatRA Specola Astronomica Vaticana Richerche Astronomiche",-"AcSpe Spectrochimica Acta",-"AcSpA Spectrochimica Acta Part A: Molecular Spectroscopy",-"SpecL Spectroscopy Letters",-"SRMO. Specula Regia Monachiensi Observationes astronomicae",-"SScT. Speculations in Science and Technology",-"Spika Spika",-"SpEng Sports Engineering",-"SSSSc Springer Series in Surface Sciences",-"STMP. Springer Tracts in Modern Physics",-"SSCP. Springer Verlag Springer Series on Chemical Physics",-"SSEp. Springer Verlag Springer Series on Electrophysics",-"SSGSR Springer Verlag Springer Series on Group Geophysics Space Research",-"SSOS. Springer Verlag Springer Series on Optical Sciences",-"SVPCS Springer Verlag Springer Series on Physics Chemistry Space",-"SSSSS Springer Verlag Springer Series on Solid State Sciences",-"SSSyn Springer Verlag Springer Series on Synergetics",-"SSWP. Springer Verlag Springer Series on Wave Phenomena",-"SprRe Sproul Observatory Reprints",-"SrLJP Sri Lankan Journal of Physics",-"SANUG Srpska Akademiia Nauka i Umetnosti Glas Odeljenje Tekhnichkikh Nauka",-"SRXPh SRX Physics",-"StarD StarDate Magazine",-"StSky Star Sky",-"StMet Statistical Methodology",-"StaSc Statistical Science",-"StCom Statistics and Computing",-"StReL Staub Reinhaltung Luft",-"SMSPS Stephan Mueller Special Publication Series",-"Sterz Sternzeit Mitteilungen der Astrnomischen Vereinigungen Aachen",-"IEWS. Stevenage Herts England Peter Peregrinus Ltd IEE Electromagnetic Waves Series",-"SteRe Steward Observatory Reprints",-"TriTr STLE Tribology Transactions",-"SAA.. Stochastic Analysis and Applications",-"SHH.. Stochastic Hydrology and Hydraulics",-"SSRp. Stochastics and Stochastics Reports",-"StoAn Stockholms Observatoriums Annaler",-"StoMe Stockholms Observatoriums Meddelande",-"StoOR Stockholms Observatoriums Reports",-"Strab Strabismus",-"Strai Strain",-"SGC.. Stratigraphy and Geological Correlation",-"Stroj Strojarstvo",-"StAst Strolling Astronomer",-"StrOp Structural Optimization",-"SASn. Studia Astronomica Sinica",-"StBio Studia Biophysica",-"StGG. Studia Geophysica et Geodaetica",-"StuMa Studia Mathematica",-"SSTor Studia Societatis Scientiarum Torunensis Sectio F Astronomia",-"StAM. Studies in Applied Mathematics",-"SCMP. Studies in Condensed Matter Physics",-"SGORS Studies in Geophysical Optics and Remote Sensing",-"StGeo Studies in Geophysics",-"StHEP Studies in High Energy Physics",-"StHCG Studies in High Energy Physics Cosmology and Gravitation",-"StMaP Studies in Mathematical Physics",-"StPTC Studies in Physical and Theoretical Chemistry",-"SScEd Studies in Science Education",-"StHPM Studies in the History and Philosophy of Modern Physics",-"StHMP Studies in the History of Mathematics and the Physical Sciences",-"Sttur Studies in turbulence",-"SCA.. Studii si Cercetari de Astronomie Bucuresti",-"StCeF Studii si Cercetari de Fizica",-"StCeM Studii si Cercetari Matematice",-"StCMA Studii si Cercetary de Mecanica Aplicata",-"SSTA. Subsurface Sensing Technologies and Applications",-"SunGe Sun and Geosphere",-"Sunwo Sunworld",-"SuScT Superconductor Science Technology",-"SuMi. Superlattices and Microstructures",-"JPhSu Supplement au Journal de Physique",-"AnMuS Supplementband zu den Annalen der Munchener Sternwarte",-"SAnAp Supplements aux Annales d'Astrophysique",-"SuCT. Surface and Coatings Technology",-"SurIA Surface and Interface Analysis",-"SRL.. Surface Review and Letters",-"SurSc Surface Science",-"SurSL Surface Science Letter",-"SurSR Surface Science Reports",-"SurSS Surface Science Spectra",-"SGeo. Surveys in Geophysics",-"SHEP. Surveys in High Energy Physics",-"SvPro Svarochnoe Proizvodstvo",-"SvUNT Sverdlovsk Ural skii Nauchnyi Tsentr AN SSSR",-"SydOP Sydney Observatory Papers",-"SynMe Synthetic Metals",-"SAMS. Systems Analysis Modelling Simulation",-"SyTec Systems Technology",-"TMPGO Tagung ueber Mathematische Probleme Geodaesie Oberwolfach West Germany Bulleting Geodesique",-"TANEs Tartu Akademiia Nauk Estonskoi SSR",-"TarPr Tartu Astrofizicheskoj Observatorii Preprint",-"TarOT Tartu Astrofuusika Observatoorium Teated",-"IzTas Tashkent Izdatel Fan",-"IzGeo Tbilisi Georgian SSR Izdatel Metsniereba",-"TIzSS Tbilisi Izdatel Sabchota Sakartvelo",-"TecN. Technical News",-"TePhL Technical Physics Letters",-"TeLoA Technika Lotnicza i Astronautyczna",-"TBBM. Techniques of Biochemical and Biophysical Morphology",-"TPhy. Techniques of Physics",-"TMKF. Technische Mitteilungen Krupp Forschungsberichte",-"TUnGG Technische Univ Geodesy Global Geodyn",-"ToIzL Technisch oekonomische Informationen zivilen Luftfahrt",-"Tech. Technology",-"TeCu. Technology and Culture",-"TecRv Technology Review",-"Tecto Tectonics",-"Tectp Tectonophysics",-"TekEl Tekhnicheskaia Elektrodinamika",-"TJAu. Telecommunication Journal of Australia",-"TDAPR Telecommunications and Data Acquisition Progress Report",-"TMOPR Telecommunications and Mission Operations Progress Report",-"TRET. Telecommunications and Radio Engineering Telecommunications",-"TelIn Telematics Informatics",-"Telet Telettra S",-"Tell. Tellus",-"TellA Tellus Series A",-"TellB Tellus Series B Chemical and Physical Meteorology B",-"TSDMO Tellus Series Dynamic Meteorology and Oceanography",-"TeoEl Teoreticheskaia Elektrotekhnika",-"TeoPM Teoreticheskaia i Prikladnaia Mekhanika",-"TFFAP Teoriia Funktsii Funktsional nyi Analiz i ikh Prilozheniia",-"TeoVP Teoriia Veroiatnostei i ee Primeneniia",-"Teplo Teploenergetika",-"Tepsg Teplofizicheskie svoistva gazov",-"TepT. Teplofizika i Teplotekhnika",-"TepVT Teplofizika Vysokikh Temperatur",-"TFizG Teploobmen i Fizicheskaia Gazodinamika",-"TNEK. Teplovye Napriazheniia Elementakh Konstruktsii",-"TeMAE Terrestrial Magnetism and Atmospheric Electricity (Journal of Geophysical Research)",-"TeMag Terrestrial Magnetism (Journal of Geophysical Research)",-"Tesla TESLA Electronics",-"TTPhy Teubner Texte zur Physik",-"TexMi Textures and Microstructures",-"Ana.. The Analyst",-"Agrph The Astrograph",-"Astr. The Astronomer",-"ATel. The Astronomer's Telegram",-"AJ... The Astronomical Journal",-"AJS.. The Astronomical Journal Supplement",-"AstRv The Astronomical Review",-"ApJ.. The Astrophysical Journal",-"ApJL. The Astrophysical Journal Letters",-"ApJS. The Astrophysical Journal Supplement Series",-"BJHS. The British Journal for the History of Science",-"BJPS. The British Journal for the Philosophy of Science",-"BuSSA The Bulletin of the Seismological Society of America",-"ComRv The Communication Review",-"CompJ The Computer Journal",-"TCD.. The Cryosphere Discussions",-"EMBO. The EMBO Journal",-"JAS.. The Journal of Agricultural Science",-"JChTh The Journal of Chemical Thermodynamics",-"JFin. The Journal of Finance",-"MatMo The Mathematical Monthly",-"Msngr The Messenger",-"Neuro The Neuroscientist",-"INGN. The Newsletter of the Isaac Newton Group of Telescopes",-"Obs.. The Observatory",-"OAcJ. The Open Acoustics Journal",-"OAeEJ The Open Aerospace Engineering Journal",-"OAPJ. The Open Applied Physics Journal",-"OAJ.. The Open Astronomy Journal",-"OASJ. The Open Atmospheric Science Journal",-"OCPJ. The Open Chemical Physics Journal",-"OCMPJ The Open Condensed Matter Physics Journal",-"OGC.. The Open Geology Journal",-"OHJ.. The Open Hydrology Journal",-"OMEJ. The Open Mechanical Engineering Journal",-"OMJ.. The Open Mechanics Journal",-"OMnJ. The Open Mineralogy Journal",-"OMPJ. The Open Mineral Processing Journal",-"ONJ.. The Open Nanoscience Journal",-"ONPPJ The Open Nuclear &",-"ONMJ. The Open Numerical Methods Journal",-"OOcJ. The Open Oceanagraphy Journalurnal",-"OOEJ. The Open Ocean Engineering Journal",-"OOJ.. The Open Optics Journal",-"OPalJ The Open Paleontology Journal",-"OPCJ. The Open Physical Chemistry Journal",-"OPPJ. The Open Plasma Physics Journal",-"ORSJ. The Open Remote Sensing Journal",-"OREJ. The Open Renewable Energy Journal",-"OSPJ. The Open Signal Processing Journal",-"OSpeJ The Open Spectroscopy Journal",-"OSuJ. The Open Superconductors Journal",-"OSSJ. The Open Surface Science Journal",-"AcTC. Theoretica Chimica Acta",-"ThApC Theoretical and Applied Climatology",-"ThAFM Theoretical and Applied Fracture Mechanics",-"TAM.. Theoretical and Applied Mechanics",-"ThCFD Theoretical and Computational Fluid Dynamics",-"TMP.. Theoretical and Mathematical Physics",-"ThAst Theoretical Astrophysics",-"TPAG. Theory and Practice of Applied Geophysics",-"PhTea The Physics Teacher",-"PlJ.. The Plant Journal",-"QJMat The Quarterly Journal of Mathematics",-"QJPAM The Quarterly Journal of Pure and Applied Mathematics",-"RamJ. The Ramaujan Journal",-"RvES. The Review of Economic Studies",-"ThEng Thermal Engineering",-"TSE.. Thermal Science and Engineering",-"SJCLI The Scandinavian Journal of Clinical and Laboratory Investigation",-"SciMo The Scientific Monthly",-"TSF.. Thin Solid Films",-"TETB. Thyssen Edelstahl Technische Berichte",-"TrTIM Tiflis Izdatel Metsniereba Akademiia Nauk Gruzinskoi SSR Institut Geofiziki Trudy",-"TrGru Tiflis Izdatel Metsniereba Akademiia Nauk Gruzinskoi SSR Matematicheskii Institut Trudy",-"IzTif Tiflis Izdatel Tbilisskogo Universiteta",-"CorTi Tirada Aparte Universidad Nacional de Cordoba Argentina Observatorio Astronomico",-"TiEng Tissue Engineering",-"TNKS. Tochnost i Nadezhnost Kiberneticheskikh Sistem",-"TSRSG Tohoku University Science Reports Series Geophysics",-"TokAB Tokyo Astronomical Bulletin",-"TokRe Tokyo Astronomical Observatory Reprints",-"TUFER Tokyo Denki University Faculty of Engineering Research Reports",-"TAEMm Tokyo Metropolitan College Aeronautical Engineering Memoirs",-"TUFEJ Tokyo University Faculty of Engineering Journal Series",-"TUISR Tokyo University Institute Industrial Science Report",-"TUASB Tokyo University Institute of Space and Aeronautical Science Bulletin",-"TUASR Tokyo University Institute of Space and Aeronautical Science Report",-"TIOA. Tomsk Institut Optiki Atmosfery CO AN SSSR",-"TApPh Topics in Applied Physics",-"TAASS Topics in Astrophysics, Astrononmy, and Space Science",-"ToCat Topics in Catalysis",-"TCPh. Topics in Current Physics",-"TPhCh Topics in Physical Chemistry",-"ToASC Torino Accademia delle Scienze Classe di Scienze Fisiche Matematiche e Naturali Atti",-"TosRv Toshiba Review",-"TouCE Toulouse Cepadues Editions",-"TrSpT Transactions of Space Technology Japan",-"TAGU. Transactions of the American Geophysical Union",-"TAMS. Transactions of the American Mathematical Society",-"TAPS. Transactions of the American Philosophical Society",-"TOYal Transactions of the Astronomical Observatory of Yale University",-"TCaPS Transactions of the Cambridge Philosophical Society",-"TIMC. Transactions of the Institute of Measurement and Control",-"TISCI Transactions of the Institute of Systems, Control and Information Engineers",-"IAUTA Transactions of the International Astronomical Union, Series A",-"IAUTB Transactions of the International Astronomical Union, Series B",-"TIUCS Transactions of the International Union for Cooperation in Solar Research",-"TJSAI Transactions of the Japanese Society for Artificial Intelligence",-"TATJ. Transactions of the Japanese Society for Artificial Intelligence, Aerospace Technology Japan",-"TJSIE Transactions of The Japanese Society of Irrigation, Drainage and Rural Engineering",-"TRACE Transactions of the Japan Society of Refrigerating and Air Conditioning Engineers",-"TLHSQ Transactions of the Literary and Historical Society of Quebec",-"TrOS. Transactions of the Optical Society",-"TSICE Transactions of the Society of Instrument and Control Engineers",-"TPM.. Transport in Porous Media",-"TTSP. Transport Theory and Statistical Physics",-"TvOC. Transvaal Observatory Circular",-"TSSLW Travaux de la Societe des Sciences et des Letters de Wroclaw",-"TOMar Travaux de l'Observatoire de Marseille",-"TraGe Travaux Geophysiques",-"TrGeo Treatise on Geochemistry",-"TTP.. Trends in Theoretical Physics",-"TriL. Tribology Letters",-"TrLit Trudy Akademiia Nauk Litovskoi",-"TrSSR Trudy Akademiia Nauk SSSR Fizicheskii Institut",-"TrAlm Trudy Astrofizicheskogo Instituta Alma-Ata",-"TrRig Trudy Astrofiz. Lab. Riga",-"TrLen Trudy Astronomicheskoj Observatorii Leningrad",-"TrPul Trudy Glavnoj Astronomicheskoj Observatorii v Pulkovo",-"TrSht Trudy Gosudarstvennogo Astronomicheskogo Instituta",-"TrDus Trudy Instituta Astrofiziki Dushanbe",-"TrSta Trudy Instituta Astrofiziki Stalinabad",-"TrKaz Trudy Kazanskaia Gorodkoj Astronomicheskoj Observatorii",-"TrMMO Trudy Moskovskoe Matematicheskoe Obshchestvo",-"TrPet Trudy Seminar imeni G Petrovskogo",-"TrTas Trudy Tashkentskoj Astronomicheskoj Observatorii",-"TrTsA TsAGI Trudy",-"ZaTsA TsAGI Uchenye Zapiski",-"TrTsI TsIAM Trudy",-"TsHUJ Tsing Hua University Journal",-"TITas Tsirkulyar Astronomicheskogo Instituta Akademiya Nauk Uzbekskoj SSR",-"TsLvo Tsirkulyar Astronomicheskoj Observatorii Lvov",-"TsShe Tsirkulyar Shemakhinskoj Astrofizicheskoj Observatorii",-"TsSta Tsirkulyar Stalinabadskoj Astronomicheskoj Observatorii",-"TsTas Tsirkulyar Tashkentskoj Astronomicheskoj Observatorii",-"TsVse Tsirkulyar Vses. astron.-geod. o-va",-"TsPul Tsirkulyary Glavnoj Astronomicheskoj Observatorii i Pulkove",-"TUAID Tuebingen Universitaet Astronomisches Institut Diplomarbeit",-"TJJPT Tuijin Jishu Journal of Propulsion Technology",-"TurTe Turbulentnye techeniia",-"TJPh. Turkish Journal of Physics",-"UkJPO Ukrainian Journal of Physical Optics",-"UkFiZ Ukrainskii Fizicheskii Zhurnal",-"UkMaZ Ukrainskii Matematicheskii Zhurnal",-"Ultmi Ultramicroscopy",-"UltIm Ultrasonic Imaging",-"Ultra Ultrasonics",-"Umsch Umschau",-"USOC. Unified System Orbit Computation USOC",-"UMIB. Unione Matematica Italiana Bollettino",-"UNPSA United Nations Programme on Space Applications",-"UniCl Universe Classroom",-"UNAer Universita di Napoli Aeritalia S",-"UCAFR Universitas Comeniana Acta Facultatis Rerum Naturalium Physica",-"UMt1K Universite de Montpellier",-"UECBu University Electro Communications Bulletin",-"UnECR University Electro Communications Reports",-"StARe University Observatory St. Andrews Scotland Reprints",-"HawRe University of Hawaii Reprints",-"ADUrb University of Illinois Astronomy Department Urbana Illinois",-"MicRe University of Michigan Observatory Reprints",-"XXFD. University of Minnesota 1969 (XXFD)",-"LP... University of Minnesota Minneapolis",-"OklRe University of Oklahoma Observatory Reprints",-"MAUTx University of Texas Monographs in Astronomy",-"PAUTx University of Texas Publications in Astronomy",-"Unpub Unpublished",-"UAPET Updates in Applied Physics and Electrical Technology",-"UppAn Uppsala Astronomical Observatory Annals",-"UppOR Uppsala Astronomical Observatory Reports",-"USM.. Upravliaiushchie Sistemy i Mashiny",-"UrBar Urania (Bracelona)",-"Urani Urania (Krakow)",-"UrMad Urania (Madrid)",-"UGSJR U S Geological Survey Journal Research",-"USNOC U.S. Naval Observatory Circulars",-"USNOR U.S. Naval Observatory Reports",-"UsFiN Uspekhi Fizicheskikh Nauk",-"UMAM. Uspekhi Mekhaniki Advances Mechanics",-"RpCCA USSR Report Cybernetics Computers Automation Technology JPRS UCC",-"RpESc USSR Report Earth Sciences JPRS UES",-"RpSpR USSR Report Space",-"RpBAM USSR Report Space Biology Aerospace Medicine JPRS USB",-"RpEEE USSR Rept Electron Elec Eng JPRS UEE",-"RpEn. USSR Rept Energy JPRS UEN",-"RpEE. USSR Rept Eng Equipment JPRS UEQ",-"RLSBB USSR Rept Life Sci Biomed Behavioral Sci JPRS",-"RMTME USSR Rept Machine Tools Metalworking Equipment JPRS UMM",-"RpMSM USSR Rept Mater Sci Met JPRS",-"RpPhM USSR Rept Phys Math JPRS UPM",-"RSBAM USSR Rept Space Biol Aerospace Med Jun JPRS",-"RpSBA USSR Rept Space Biol Aerospace Med Sep",-"RpTr. USSR Rept Transportation JPRS UTR",-"UtMat Utilitas Mathematica",-"UtrOv Utrechtse Sterrekundige Overdrukken",-"Vacuu Vacuum",-"VVORe Van Vleck Observatory Reprints",-"VSOLB Variable Star Observers League in Japan - Bulletin",-"Vasio Vasiona",-"VatOP Vatican Observatory Publications",-"VDIF. VDI Forschungsheft",-"VDIZ. VDI Z",-"VDIZF VDI Zeitschriften Fortschritt Berichte Reihe Stroemungstechnik",-"VSD.. Vehicle System Dynamics",-"VKAWA Verhandelingen der Koninklijke Akademie van Wetenschappen te Amsterdam",-"Verme Vermessungstechnik",-"VeWFS Veroeffentlichung der Wilhelm Foerster Sterwarte",-"ViHei Veroeffentlichungen der Badischen Landes-Sternwarte zu Heidelberg",-"VeHei Veroeffentlichungen der Badischen Sternwarte zu Heidelberg",-"VeGG. Veroeffentlichungen der Geod. Geophys",-"VeKar Veroeffentlichungen der Grossherzoglichen Sternwarte zu Karlsruhe",-"VeBam Veroeffentlichungen der Remeis-Sternwarte zu Bamberg",-"VeBab Veroeffentlichungen der Sternwarte Babelsberg",-"VeMun Veroeffentlichungen der Sternwarte Munchen",-"VeSon Veroeffentlichungen der Sternwarte Sonneberg",-"VeKie Veroeffentlichungen der Universitaets-Sternwarte Kiel",-"VeKoe Veroeffentlichungen der Universitaets-Sternwarte Koenigsberg Pr.",-"VeBB. Veroeffentlichungen der Universitaetssternwarte zu Berlin-Babelsberg",-"VeGoe Veroeffentlichungen der Universitaets-Sternwarte zu Goettingen",-"VeJen Veroeffentlichungen der Universitaets-Sternwarte zu Jena",-"VeLei Veroeffentlichungen der Universitaetssternwarte zu Leipzig",-"VeBoc Veroeffentlichungen des Astronomischen Instituts der Ruhr-Universitaet Bochum",-"VeARI Veroeffentlichungen des Astronomischen Rechen-Instituts Heidelberg",-"VeABD Veroeffentlichungen des Astronomischen Rechen-Instituts zu Berlin-Dahlem",-"VeBon Veroeffentlichungen des Astronomisches Institute der Universitaet Bonn",-"VeFra Veroeffentlichungen des Astronomisches Institute der Universitaet Frankfurt",-"VeBKI Veroeffentlichungen des Bayerische Kommission Int. Erdmessung",-"VeKAB Veroeffentlichungen des Koeniglichen Astronomischen Rechen-Instituts zu Berlin",-"VeZPE Veroffentlichungen des Zentralinstituts Physik der Erde",-"VMKAN Verslagen en Mededeelingen der Kon. Academie van Wetenschappen, Afd. Natuurkunde",-"VeLdn Verslag van den staat der Sterrewacht te Leiden",-"Vert. Vertica",-"Vertf Vertiflite",-"Vesmi Vesmir",-"VKha. Vestnik Khar'kovskogo Universiteta",-"VeKha Vestnik Khar'kov Universitet",-"VKie. Vestnik Kievskogo Universiteta Seriya Astronomii",-"VeLGU Vestnik LGU",-"VeMos Vestnik Moskovskogo Universiteta Seriya 3 Fizika Astronomiya",-"VISBD Vibration Inst Shock Vibration Digest",-"VIAEA Vienna International Atomic Energy Agency",-"VAG.. Vierteljahresschrift der Astronomischen Gesellschaft",-"VMed. Vierteljahrschrift für Gerichtliche Medizin und Öffentliches Sanitätswesen",-"VNG.. Vierteljahrsschrift der Naturforschenden Gesellschaft in Zürich",-"VilCo Villanova University Observatory Contributions",-"VilOB Vilnius Astronomijos Observatorijos Biuletenis",-"IzVil Vilnius Izdatel Mokslas",-"VJS.. Virginia Journal of Science",-"VisKi Visnik Kiiv. Univ., Fiz.-Mat. Nauki, Astron",-"ViGeo Vissha Geodeziia",-"VA... Vistas in Astronomy",-"VTJ.. Vitro Technical Journal",-"yCat. VizieR Online Data Catalog",-"yCatp VizieR Online Data Catalog",-"VADVS VKI Advanced Design of Ventilation Systems",-"VICFD VKI An Introduction to Computational Fluid Dynamics",-"VIMT. VKI An Introduction to Modeling Turbulence",-"VAFC. VKI Axial Flow Compressors",-"VBLT. VKI Boundary Layers in Turbomachines",-"VCCPP VKI Combined Cycles for Power Plants",-"VCFD. VKI Computational Fluid Dynamics",-"VCFDI VKI Computational Fluid Dynamics for Industrial Flows",-"VCGFV VKI Computer Graphics Flow Visualization and Computational Fluid Dynamics",-"VGTET VKI Gas Turbine Engine Transient Behaviour",-"VIHE. VKI Industrial Heat Exchangers",-"VKILV VKI Laser Velocimetry",-"VKIMT VKI Measurement and Techniques",-"VMTA. VKI Measurement Techniques in Aerodynamics",-"VMHT. VKI Methodology Hypersonic Testing",-"VMATP VKI Modeling and Applications of Transport Phenomena in Porous Media",-"VADMT VKI New Approaches in the Description and Modeling of Turbulence",-"VNGG. VKI Numerical Grid Generation",-"VNMFT VKI Numerical Methods for Flows in Turbomachinery",-"VPIDV VKI Particle Image Displacement Velocimetry",-"VKIRT VKI Radial Turbines",-"VKISP VKI Spacecraft Propulsion",-"VTSF. VKI Turbulent Shear Flows",-"VVRD. VKI Vibration Rotor Dynamics",-"VLSID VLSI Design",-"VAC.. Voies Aviation Civile Fall Winter",-"VANTS Voprosy Atomnoi Nauki i Tekhniki Seriia Fizika Plazmy i Problemy Upravliaemykh Termoiadernykh Reaktsii",-"VopDP Voprosy Dinamiki i Prochnosti",-"VETT. Voprosy Elektroniki Tverdogo Tela",-"VopGA Voprosy Gidrodinamiki Atmosfery",-"VopK. Voprosy Kibernetiki",-"VMOIP Voprosy Metrologicheskogo Obespecheniia Izmereniia Parametrov Tekhnologicheskikh Lazerov",-"VoTAS Voprosy Teorii Atomnykh Stolknovenii",-"VopTP Voprosy Teorii Plazmy",-"VTSAU Voprosy Teorii Sistem Avtomaticheskogo Upravleniia",-"VossZ Vossische Zeitung",-"IzYak Vsesoiuznaia Konferentsiia Kosmicheskim Lucham Yakutsk USSR Akademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",-"IzYer Vsesoiuznaia Konferentsiia Kosmicheskim Lucham Yerevan Armenian SSR Aademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",-"RaUkr Vsesoiuznyi Simpozium Difraktsii i Rasprostraneniiu Voln Lvov Ukrainian SSR Radiofizika",-"VnPM. Vychislitel naia i Prikladnaia Matematika",-"VnMP. Vychislitel nye Metody i Programmirovanie",-"VyGeo Vyssha Geodeziia",-"WarRe Warsaw University Reprints",-"WasOA Washburn Observatory Astrophysics",-"GMS.. Washington DC American Geophysical Union Geophysical Monograph Series",-"WRR.. Water Resources Research",-"WavEl Wave Electronics",-"WaMot Wave Motion",-"WRCM. Waves in Random and Complex Media",-"WRM.. Waves in Random Media",-"Wear. Wear",-"WearB Wear B",-"Wthr. Weather",-"WtFor Weather and Forecasting",-"WeiEn Weight Engineering",-"WeldJ Welding Journal",-"Werk. Werkgroepnieuws",-"JIMO. WGN, Journal of the International Meteor Organization",-"WilOO Williamstown Observatory Observations",-"WiEn. Wind Energy",-"WiEng Wind Engineering",-"WisBT Wissenschaftliche Berichte AEG Telefunken",-"WisZe Wissenschaftliche Zeitschrift",-"WSAAA Workshop Series of the Asociacion Argentina de Astronomia",-"WCRp. World Climate Report",-"WJCMP World Journal of Condensed Matter Physics",-"WJM.. World Journal of Mechanics",-"WJNSE World Journal of Nano Science and Engineering",-"WJNST World Journal of Nuclear Science and Technology",-"WroRe Wroclaw Astronomical Observatory Reprints",-"Wuli. Wuli",-"YaFiz Yadernaya Fizika",-"YalOY Yale University Observatory Reports for the Year",-"YUFEM Yamaguchi University Faculty of Engineering Memoirs",-"YUTR. Yamaguchi University Technology Reports",-"YamC. Yamamoto Circular",-"ZaDN. Zagadnienia Drgan Nieliniowych",-"JAMP. ZAMP Journal of Applied Mathematics and Physics",-"ZaLab Zavodskaia Laboratoriia",-"ZaMM. Zeitschrift Angewandte Mathematik und Mechanik",-"ZaMP. Zeitschrift Angewandte Mathematik und Physik",-"ZFHDG Zeitschrift der Fachsektion Hydrogeologie in der Deutschen Geologischen Gesellschaft",-"ZeIE. Zeitschrift elektrische Informations und Energietechnik",-"ZAGeo Zeitschrift fur Angewandte Geographie",-"ZAPhy Zeitschrift fur Angewandte Physik",-"ZAAC. Zeitschrift fur Anorganische und Allgemeine Chemie",-"ZA... Zeitschrift fur Astrophysik",-"ZEVGA Zeitschrift fur Eisenbahnwesen und Verkehrstechnik Glasers Annalen",-"ZEAPC Zeitschrift für Elektrochemie und Angewandte Physikalische Chemie",-"ZFlu. Zeitschrift fur Flugwissenschaften",-"ZFlWe Zeitschrift fur Flugwissenschaften und Weltraumforschung",-"ZGm.. Zeitschrift fur Geomorphologie",-"ZGmS. Zeitschrift fur Geomorphologie Supplement",-"ZGeo. Zeitschrift fur Geophysik",-"ZGlGl Zeitschrift fur Gletscherkunde und Glazialgeologie",-"ZK... Zeitschrift fur Kristallographie",-"ZKMP. Zeitschrift fur Kristallographie Mineralogie und Petrographie",-"ZKS.. Zeitschrift fur Kristallographie Supplements",-"ZMP.. Zeitschrift für Mathematik und Physik",-"ZMetl Zeitschrift fur Metallkunde",-"ZeMet Zeitschrift fur Meteorologie",-"ZPhy. Zeitschrift fur Physik",-"ZPhyA Zeitschrift fur Physik A Hadrons and Nuclei",-"ZPC.. Zeitschrift fur Physikalische Chemie",-"ZPCF. Zeitschrift fur Physikalische Chemie Frankfurt",-"ZPCL. Zeitschrift fur Physikalische Chemie Leipzig",-"ZPCNF Zeitschrift fur Physikalische Chemie Neue Folge",-"ZPCW. Zeitschrift fur Physikalische Chemie Wiesbaden",-"ZPhyB Zeitschrift fur Physik B Condensed Matter",-"ZPhyC Zeitschrift fur Physik C Particles and Fields",-"ZPhyD Zeitschrift fur Physik D Atoms Molecules Clusters",-"ZNatA Zeitschrift Naturforschung Teil A",-"ZNatB Zeitschrift Naturforschung Teil B",-"ZePAN Zeitschrift Physik Atomic Nuclei",-"ZVer. Zeitschrift Vermessungswes.",-"ZWer. Zeitschrift Werkstofftechnik",-"ZemVs Zemlia i Vselennaia",-"Zenit Zenit",-"MiTau Zentralinstitut fuer Astrophysik Mitteilungen des Karl-Schwarzschild-Observatoriums Tautenburg",-"MitVS Zentralinstitut fuer Astrophysik Sternwarte Sonneberg Mitteilungen ueber Veraenderliche Sterne",-"ZhPmR ZhETF Pis ma Redaktsiiu",-"ZhETF Zhurnal Eksperimental noi i Teoreticheskoi Fiziki",-"ZhFK. Zhurnal Fizicheskoi Khimii",-"ZNPFK Zhurnal Nauchnoi i Prikladnoi Fotografii i Kinematografii",-"ZhPhy Zhurnal Physik",-"ZhPS. Zhurnal Prikladnoi Spektroskopii",-"ZhTFi Zhurnal Tekhnicheskoi Fiziki",-"ZVMMF Zhurnal Vychislitel noi Matematiki i Matematicheskoi Fiziki",-"ZiZa. Ziran Zazhi",-"Zprav Zpravodaj VZLU",-"ZvDeb Zvaigsnota Debess",+ * | cut -c 7-12,24- | sed 's/"//g'+ * | awk '{ for(i=1;i<=length($0);++i){c=substr($0,i,1);if(c==" "&&i<6) { printf(".");} else {printf("%s",c);}}printf("\n");}'+ * | awk '{printf "\"%s\",\n",$0 }' | sort -n -k2 + *+ */+static const char *journals[] = {+"A&AA. Astronomy and Astrophysics Abstracts Heidelberg",+"AAABS Asociacion Argentina de Astronomia La Plata Argentina Book Series",+"AAAN. Astronomische Abhandlungen als Erganzungshefte zu den Astronomische Nachrichten",+"AAAR. Arctic, Antarctic and Alpine Research",+"A&A.. Astronomy and Astrophysics",+"A&AC. Astronomy &",+"AADDR Abhandlungen Akad. Wiss. DDR",+"AAfz. Astrometriia i Astrofizika",+"AAGot Abhandlungen Akad. Wiss. Gö",+"AAHam Astronomische Abhandlungen der Hamburger Sternwarte",+"AAIzN Alma Ata Izdatel Nauka",+"AALST Atti Accad. Ligure Sci. Lett.",+"AAM.. Archive of Applied Mechanics",+"AAMOP Advances in Atomic Molecular and Optical Physics",+"AAMS. Adv. Appl. Mech. Suppl.",+"AAN.. AAVSO Alert Notice",+"AAnST Advances in Astronautics Science and Technology",+"AAONw Anglo-Australian Observatory Epping Newsletter",+"AAOPr Anglo-Australian Observatory Epping Preprint",+"AAPon Atti Accad. Pontaniana",+"A&ARv Astronomy and Astrophysics Review",+"A&AS. Astronomy and Astrophysics Supplement Series",+"AASF. Ann. Acad. Sci. Fennicae",+"AASHS AAS Hist. Ser.",+"AASP. Advances in Astronomy and Space Physics",+"AASPB AAS Photo Bulletin",+"AASPP Astrononomy and Astrophysics Series",+"AAST. Atti Accad. Sco. Torino I",+"A&AT. Astronomical and Astrophysical Transactions",+"AAVNw AAVSO Newsletter",+"AAVSB AAVSO Solar Bulletin",+"AAVSC AAVSO Circular",+"AAVSN AAVSO Special Notice",+"AbaOB Abastumanskaia Astrofizicheskaia Observatoriia Byulleten",+"AbApA Abstract and Applied Analysis",+"AbAst Abenteuer Astronomie",+"AbbOO Abbadia Observatory Observations",+"AbhBr Abh. naturwiss. Verein Bremen",+"AbhKP Abh. Konigl. Preuss. Akad. Wissenschaften Jahre 1906,92, Berlin,1907",+"AbhP. Abh. der Preuß",+"AbICA Abstracts of the ICA",+"ABKie Astronomische Beobachtungen auf der Sternwarte der Koeniglichen Christian-Albrechts-Universitaet zu Kiel",+"ABMun Astronomische Beobachtungen angestellt auf der K. Sternwarte zu Bogenhausen bei Muenchen",+"ABSBe Astronomische Beobachtungen auf der Koniglichen Sternwarte zu Berlin",+"ABWG. Abh. Braunschweigische Wissenschaftliche Ges.",+"AcA.. Acta Astronomica",+"AcAAS Acta Aeronautica et Astronautica Sinica",+"AcAau Acta Astronautica",+"AcAcu Acta Acustica",+"AcAer Acta Aerodynamica Sinica",+"AcApS Acta Astrophysica Sinica",+"AcAri Acta Arithmetica",+"AcArm Acta Armamentarii",+"AcASn Acta Astronomica Sinica",+"A&C.. Astronomy and Computing",+"AcAuS Acta Automatica Sinica",+"AcBu. Acoust. Bull.",+"AcC.. Acta Cosmologica",+"AcChR Accounts Chem. Res.",+"AcCrA Acta Crystallographica Section A",+"AcCrD Acta Crystallographica Section D",+"AcEle Acta Electronica",+"AcElS Acta Electronica Sinica",+"ACESJ Applied Computational Electromagnetics Society Journal",+"AcESn Acta Electron. Sinica",+"AcGdG Acta Geodynamica et Geomaterialia",+"AcGeo Acta Geophysica",+"AcGeP Acta Geophysica Polonica",+"AcGG. Acta Geod. Geophys.",+"ACGIS Advances in Cartography and GIScience of the ICA",+"AcGSn Acta Geophys. Sinica",+"AcHA. Acta Historica Astronomiae",+"AcHPh Helvetica Physica Acta",+"AcHPS Helvetica Physica Acta Supplementum",+"ACiCh Astronomical Circular",+"ACIP. Acta Cienc. Indica Phys.",+"AcMa. Acta Mathematica",+"ACMan Astronomical Contributions from the University of Manchester",+"AcMaS Acta Mathematica Sinica",+"AcMat Acta Materialia",+"AcMCS Acta Materiae Compositae Sinica",+"AcMec Acta Mechanica",+"AcMeS Acta Meteorologica Sinica",+"AcMet Acta Metallurgica",+"AcMik Mikrochimica Acta",+"AcM&M Acta Metallurgica et Materialia",+"AcMPh Acta Universitatis Caroliae. Mathematica et Physica",+"AcMPS Acta Universitatis Caroliae. Mathematica et Physica Supplement",+"AcMSn Acta Mechanica Sinica",+"AcMSS Acta Mechanica Solida Sinica",+"AcMSw Acta Mathematica Sweden",+"AcMT. Acta Materialia Transylvanica",+"AcNum Acta Numerica",+"AcO.. Acta Oecologica",+"AcOpS Acta Optica Sinica",+"AcOpt Optica Acta",+"AcOSi Acta Oceanica Sinica",+"AcouL Acoustics Letters",+"AcPAS Acta Physica Austriaca Supplement",+"ACP.. Atmospheric Chemistry & Physics",+"ACPD. Atmospheric Chemistry & Physics Discussions",+"AcPhA Acta Physica Austriaca",+"AcPhC Acta Physica et Chemica",+"AcPhH Acta Physica Hungarica",+"AcPhS Acta Physiologica Scandinavica",+"AcPhy Acta Physica",+"AcPol Acta Polytechnica",+"AcPPA Acta Physica Polonica A",+"AcPP. Acta Physica Polonica",+"AcPPB Acta Physica Polonica B",+"AcPPP Acta Polytechnica CTU Proceedings",+"AcPPS Acta Physica Polonica B, Proceedings Supplement",+"AcPSc Acta Polytechnica Scandinavica Applied Physics Series",+"AcPSi Acta Photonica Sinica",+"AcPSl Acta Physica Slovaca",+"AcPSn Acta Physica Sinica",+"AcRhe Rheologica Acta",+"ACSB. American Ceramic Society Bulletin",+"ACSC. American Ceramic Society Communications",+"ACSJ. American Ceramic Society Journal",+"AcSN. Acta Scientifica Naturalis",+"AcSpA Spectrochimica Acta Part A: Molecular Spectroscopy",+"AcSpe Spectrochimica Acta",+"AcSSn Acta Seismologica Sinica",+"ACTAp Automatic Control Theory Applications",+"AcTC. Theoretica Chimica Acta",+"AcTec Acta Technica",+"Acu.. Acustica",+"AcUnC Acta Universitatis Cibiniensis",+"AcUni Acta Universitaria",+"AdA&A Advances in Astronomy and Astrophysics",+"AdAer Advances in Aeronautics",+"AdAMP Advances in Atomic and Molecular Physics",+"AdAnS Advances in the Astronautical Sciences",+"AdAp. Advances in Astrophysics",+"AdApM Advances in Applied Mathematics",+"adap.pNASA ADAP Proposal",+"AdAs. Ad Astra",+"adass Astronomical Data Analysis Software and Systems",+"AdAst Advances in Astronomy",+"AD... Atomic Data",+"AdAtS Advances in Atmospheric Sciences",+"ADCBu Astronomical Data Center Bulletin",+"AdChP Advances in Chemical Physics",+"AdCIS Advances in Colloid and Interface Science",+"AdCM. Advanced Ceramic Materials",+"AdCMP Advances in Condensed Matter Physics",+"AdCoL Advanced Composites Letters",+"AdEl. Advanced Electromagnetics",+"AdEPS Advances in Earth and Planetary Sciences",+"AdG.. Advances in Geosciences",+"AdGeo Advances in Geophysics",+"AdHEP Advances in High Energy Physics",+"ADIL. Astronomy Data Image Library",+"AdMaP Advances in Mathematical Physics",+"AdMet Advances in Meteorology",+"AdMPC Advances in Materials Physics and Chemistry",+"AdMRe Advances in Magnetic Resonance",+"AdMS. Advances in Materials Science",+"AdMSE Advances in Materials Science and Engineering",+"AdMUM Advances in Mechanics Uspekhi Mekhaniki",+"ADNDT Atomic Data and Nuclear Data Tables",+"AdNOp Advances in Nonlinear Optics",+"AdNuP Advances in Nuclear Physics",+"AdOP. Advances in Optics and Photonics",+"AdOT. Advanced Optical Technologies",+"AdPho Advanced Photonics",+"AdPhy Advances in Physics",+"AdPlP Advances in Plasma Physics",+"AdQC. Advances in Quantum Chemistry",+"AdRS. Advances in Radio Science",+"AdSAC Advanced Series in Astrophysics and Cosmology",+"AdSpR Advances in Space Research",+"AdSR. Advances in Science and Research",+"AdTAM Advances in Theoretical and Applied Mechanics",+"AdThP Advances in Theoretical Physics",+"AdTMP Advances in Theoretical and Mathematical Physics",+"AdWR. Advances in Water Resources",+"AeAm. Aerospace America",+"AeCh. Aerospace China",+"AeCM. Aerospace Composites and Materials",+"AEdRv Astronomy Education Review",+"AeDy. Aerospace Dynamics",+"AeEn. Aerospace Engineering",+"AEEP. Advances in Electronics and Electron Physics",+"AEEPS Advances in Electronics and Electron Physics Supplement",+"AeIBu Aerokosmicheski Izsledvaniia B lgariia",+"AeJ.. Aeronautical Journal",+"Aekv. Aerodinamika kanalov i ventiliatorov",+"AeMat Aerospace Materials",+"AeMed Aerospace Medicine",+"AeMiS Aerotecnica Missili &",+"AeoRe Aeolian Research",+"AeQ.. Aeronautical Quarterly",+"AeRaG Aerodinamika Razrezhennykh Gazov",+"AerAs L'Aeronautique et L'Astronautique",+"AerMS L'Aerotecnica Missili e Spazio",+"Aero. Aerospace UK",+"AerRv Revue Aerospatiale",+"AerSE Aerosol Science and Engineering",+"AerST Aerosol Science Technology",+"AerSy Aerospace Systems",+"AerTe Aerojet Technology",+"AeSIJ Aeronautical Society India Journal",+"AeTJa Aerospace Technology Japan",+"AExpr Astronomy Express",+"AFChr Annales Francaises de Chronometrie",+"AFGL. AFGL-TR-0208 Environemental Research papers",+"AFLB. Annales de la Fondation Louis de Broglie",+"AFMa. Air Force Magazine",+"AFOEV Bulletin de l'Association Francaise d'Observateurs d'Etoiles Variables",+"AFRE. Alta Frequenza Rivista di Elettronica",+"AfrSk African Skies",+"AfRvP The African Review of Physics",+"Afz.. Astrofizika",+"A&G.. Astronomy and Geophysics",+"AgFM. Agricultural and Forest Meteorology",+"Agrph The Astrograph",+"AGUA. AGU Advances",+"AGUFM AGU Fall Meeting Abstracts",+"AGUSM AGU Spring Meeting Abstracts",+"AHEEM Archives of Hydro-Engineering and Environmental Mechanics",+"AHES. Archive for History of Exact Sciences",+"AHSJ. American Helicopter Society Journal",+"AIAAJ AIAA Journal",+"AIASJ AIAA Student Journal",+"AIChE AIChE Journal",+"AIH.. Acoustical Imaging and Holography",+"AIHAJ AIHA Journal",+"AIHPA Annales de L'Institut Henri Poincare Section (A) Physique Theorique",+"AIHPB Annales de L'Institut Henri Poincare Section (B) Probability and Statistics",+"AIHPC Annales de L'Institut Henri Poincare Section (C) Non Linear Analysis",+"AiInt Air International",+"AIMSG AIMS Geosciences",+"AIPA. AIP Advances",+"AIQSY Annals of the IQSY",+"AirCo Air et Cosmos",+"AirE. Aircraft Engineering",+"AirSp Air and Space",+"AISAO Astrofizicheskie Issledovaniia Izvestiya Spetsial'noj Astrofizicheskoj Observatorii",+"AISof Astrofizicheskie Issledovaniya Sofia",+"AJB.. Astronomischer Jahresbericht",+"AJCh. Australian Journal of Chemistry",+"AJGeo American Journal of Geoscience",+"AJSE. Arabian Journal of Science Engineering",+"AJSEd Atlas Journal of Science Education",+"AJS.. The Astronomical Journal Supplement",+"AJ... The Astronomical Journal",+"AkAtP Akademia Athenon Praktika",+"AkTek Akustika i Ul trazvukovaia Tekhnika",+"AkZh. Akusticheskii Zhurnal",+"AlFr. Alta Frequenza",+"ALMAN ALMA Newsletter",+"AMat. Applied Mathematics",+"Ambio Ambio",+"AMGBA Archives for Meteorology Geophysics and Bioclimatology Series A Meteorology and Atmopsheric Physics",+"AMGBB Archives for Meteorology Geophysics and Bioclimatology Series B Theoretical and Applied Climatology",+"AMGBK Archiv Meteorologie Geophysik und Bioklimatologie Serie B Klimatologie und Umweltmeteorologie Strahlungsforschung",+"AMGBS Archiv Meteorologie Geophysik und Bioklimatologie Serie Meteorologie und Geophysik",+"AmJC. American Journal of Cardiology",+"AmJM. American Journal of Mathematics",+"AmJPh American Journal of Physics",+"AmJSA American Journal of Science and Arts",+"AmJS. American Journal of Science",+"AMM.. Applied Mechanics and Materials",+"AmMin American Mineralogist",+"AMP.. Advanced Materials and Processes",+"AMR.. Antarctic Meteorite Research",+"AmSci American Scientist",+"AMT.. Atmospheric Measurement Techniques",+"AMTD. Atmospheric Measurement Techniques Discussions",+"AMTM. Archives of Mechanical Technology and Materials",+"AnaCh Analytical Chemistry",+"AnAIK Annales de l'Observatoire astronomique de l'Université",+"AnaIn Analytical Instrumentation",+"AnAp. Annales d'Astrophysique",+"AnAPM Annales de l'Observatoire d'astronomie physique de Paris, Section d'astrophysique, à",+"AnApS Annals of Applied Statistics",+"AN... Astronomische Nachrichten",+"Ana.. The Analyst",+"AnBes Annales de l'Observatoire de Besancon",+"AnBog Neue Annalen der Koeniglichen Sternwarte in Bogenhausen bei Muenchen",+"AnBor Annales de l'Observatoire de Bordeaux",+"AnBos Annals of the Bosscha Observatory Lembang (Java) Indonesia",+"AnBru Annales de l'Observatoire Royal de Bruxelles",+"AnCap Annals of the Cape Observatory",+"AnCGH Annals of Royal Observatory, Cape of Good Hope",+"AnCPh Annales de Chimie et de Physique",+"AnDea Annals of the Dearborn Observatory",+"AnDud Annals of the Dudley Observatory",+"AnEdi Annals of the Royal Observatory, Edinburgh",+"AnErg Ergaenzungshefte zu den Astronomischen Nachrichten",+"Anews ASTRON Newsletter",+"AnFis Anales de Fisica",+"AnG.. Annales de Geophysique",+"AnGeo Annales Geophysicae",+"AnGla Annals of Glaciology",+"AnGp. Annals of Geophysics",+"AnGVP Annales du Bureau des Longitudes, Gauthier-Villars, Paris",+"AnHar Annals of Harvard College Observatory",+"AnHP. Annales Henri Poincaré",+"AnIPS Annals of the Israel Physical Society",+"ANLAF Accademia Nazionale dei Lincei Atti Rendiconti Classe di Scienze Fisiche e Naturali",+"ANLAM Accademia Nazionale dei Lincei Atti Rendiconti Classe di Matematica e Applicazioni",+"ANLAR Accademia Nazionale dei Lincei Atti Rendiconti Classe di Scienze Fisiche Matematiche e Naturali",+"AnLei Annalen van de Sterrewacht te Leiden",+"AnLL. Annals of the Observatory of Lucien Libert",+"AnLow Annals of the Lowell Observatory",+"AnLun Annals of the Observatory of Lund",+"AnLuS Annals of the Observatory of Lund Supplement",+"AnMat Annals of Mathematics",+"AnMet Annalen Meteorologie",+"AnMN. Antarctic Meteorite Newsletter",+"AnMP. Analysis and Mathematical Physics",+"AnMun Annalen der Koeniglichen Sternwarte bei Muenchen",+"AnMuS Supplementband zu den Annalen der Munchener Sternwarte",+"AnNic Annales de l'Observatoire de Nice",+"AnOB. Annales de l'Observatoire Royal de Belgique",+"AnOBN Annales de l'Observatoire Royal de Belgique Nouvelle serie",+"AnOLL Annals of the Private Observatory of Lucien Libert",+"AnOSt Annales de l'Observatoire de Strasbourg",+"AnP.. Annalen der Physik",+"AnPar Annales de l'Observatoire de Paris",+"AnPCS Annales de Physique Colloque Supplement",+"AnPh. Annales de Physique",+"AnPhy Annals of Physics",+"AnPOb Annales de l'Observatoire de Paris. Observations",+"AnRE. Annual Review of Energy",+"AnRFM Annual Review of Fluid Mechanics",+"AnRio Annales de l'Observatoire Imperial de Rio de Janeiro",+"AnRMS Annual Review of Materials Science",+"AnRSA Annual Review of Statistics and Its Application",+"AnSAO Annals of the Astrophysical Observatory of the Smithsonian Institution",+"ANS.. Astronomische Nachrichten Supplement",+"AnSci Annals of Science",+"AnShO Shanghai Observatory Annals",+"ANSNN Advances in Natural Sciences: Nanoscience and Nanotechnology",+"AnSPC Annals of the Solar Physics Observatory Cambridge England",+"AnSSM Annals of Solid and Structural Mechanics",+"AnSta Annals of Statistics",+"AnStr Annalen der Kaiserlichen Universitats-Sternwarte in Strassburg",+"AntAs The Antiquarian Astronomer",+"AnTec Annales Tectonicae",+"AnTel Annales des Telecommunications",+"Anten Antenny",+"Antk. Antarktika",+"AnTok Annals of the Tokyo Astronomical Observatory",+"AnTou Annales de l'Observatoire Astron. et Meteo. de Toulouse",+"AntSc Antarctic Science",+"AnUCP Annals of the University of Craiova Physics AUC",+"AnWiD Annalen der Universitaets-Sternwarte Wien, Dritter Folge",+"AnWie Annalen der K.K. Sternwarte Wien",+"ANZi. Beobachtungs-Zirkular der Astronomischen Nachrichten",+"AnZoC Annales de l'Observatoire astronomique de Zô",+"AOIJ. Academic Open Internet Journal",+"AOTok Annales de l'Observatoire astronomique de Tokyo",+"ApAc. Applied Acoustics",+"ApAN. Apatity Akademiia Nauk SSSR",+"Ap... Astrophysics",+"APCAJ Air Pollution Control Association Journal",+"ApCM. Applied Composite Materials",+"Apei. Apeiron",+"ApEn. Applied Energy",+"ApEnM Applied Environmental Microbiology",+"APExp Applied Physics Express",+"APFUS Annals of the Physics Faculty of the University of Sofia",+"ApGC. pplied Geochemistry",+"ApGeo Applied Geophysics",+"APh.. Astroparticle Physics",+"APHHI Acta Physica Hungarica Heavy Ion Physics",+"APHQE Acta Physica Hungarica Quantum Electronics",+"APhy. Acoustical Physics",+"ApHyd Applied Hydrogeology",+"ApInv Astrophysical Investigations",+"APJAS Asia-Pacific Journal of Atmospheric Sciences",+"ApJS. The Astrophysical Journal Supplement Series",+"ApJ.. The Astrophysical Journal",+"ApKF. Apatity Kol skii Filial AN SSSR",+"ApL.. Astrophysical Letters",+"ApL&C Astrophysical Letters and Communications",+"APLM. APL Materials",+"APLP. APL Photonics",+"ApMaC Applied Mathematics Computation",+"ApMaL Applied Mathematics Letters",+"ApMaM Applied Mathematics Mechanics English Edition",+"ApMaO Applied Mathematics Optimization",+"ApMat Aplikace Matematiky, Applied Mathematics",+"ApMic Applied Microbiology",+"ApMM. Applied Mathematics and Mechanics",+"ApMRv Applied Mechanics Reviews",+"ApMT. Applied Microgravity Technology",+"ApNan Applied Nanoscience",+"ApNM. Applied Numerical Mathematics",+"ApNr. Astrophysica Norvegica",+"ApOpt Applied Optics",+"AppAn Applicable Analysis",+"ApPhA Applied Physics A: Materials Science & Processing",+"ApPhB Applied Physics B: Lasers and Optics",+"ApPhC Applied Physics Communications",+"ApPhL Applied Physics Letters",+"ApPhR Applied Physics Research",+"ApPhy Applied Physics",+"ApPPL Applied Physics B Photophysics Laser Chemistry",+"ApPRv Applied Physics Reviews",+"apra.pNASA APRA Proposal",+"ApScR Applied Scientific Research",+"ApSE. Applied Solar Energy",+"ApSpe Applied Spectroscopy",+"ApSRA Applied Scientific Research Section A",+"ApSRB Applied Scientific Research Section B",+"ApSRv Applied Spectroscopy Reviews",+"ApSS. Applied Surface Science",+"Ap&SS Astrophysics and Space Science",+"ApSSP Astrophysics and Space Science Proceedings",+"ApSSS Astrophysics and Space Science Supplement",+"ApSup Applied Superconductivity",+"ApT.. Astrophysics Today",+"ApWS. Applied Water Science",+"ARA&A Annual Review of Astronomy and Astrophysics",+"ArA.. Arkiv for Astronomi",+"ARAC. Annual Review of Analytical Chemistry",+"ArAco Archives Acoustics",+"ArAku Archiwum Akustyki",+"ARAOJ Annual Report of the National Astronomical Observatory of Japan",+"A&R.. Astronomie und Raumfahrt",+"ArAuT Archiwum Automatyki i Telemechaniki",+"ArBei Astrophysics Reports Publications of the Beijing Astronomical Observatory",+"ARBl. Aerospace Research in Bulgaria",+"ArBuM Archiwum Budowy Maszyn",+"Arch. Archaeoastronomy",+"ArchS Archaeoastronomy Supplement",+"ARCMP Annual Review of Condensed Matter Physics",+"ArCom Archivum Combustionis",+"AReg. Astronomical register",+"ArEle Archiwum Elektrotechniki",+"ArElU Archiv Elektronik und Uebertragungstechnik",+"ARep. Astronomy Reports",+"AREPS Annual Review of Earth and Planetary Sciences",+"ArG.. Arkiv for Geofysik",+"ARIJ. An Interdisciplinary Journal of Physical and Engineering Sciences",+"ARIST Annual Review of Information Science and Technology",+"ArJPh Armenian Journal of Physics",+"ArMAF Arkiv for Matematik, Astronomi och Fysik",+"ArMaN Archiv for Mathematik og Naturvidenskab",+"ArM.. Arkiv for Matematik",+"ArMeS Archiv of Mechanics, Archiwum Mechaniki Stosowanej",+"ArMiS Archives of Mining Sciences",+"ARMS. Annual Review of Marine Science",+"ARNPS Annual Review of Nuclear and Particle Science",+"ArNSc Archives Neerlandaises des Sciences Exactes et Naturelles",+"ARPC. Annual Review of Physical Chemistry",+"ARPM. Adgeziia Rasplavov i Paika Materialov",+"ArPSp Archiwum Procesow Spalania",+"ArRMA Archive for Rational Mechanics and Analysis",+"ArS.. Archives des Sciences",+"ArSPN Archives des Sciences Physiques et Naturelles",+"AR&T. Astronomical Research and Technology",+"ArTh. Archives of Thermodynamics",+"ArTr. Archives of Transport",+"ArtSa Artificial Satellites",+"ArTSp Archiwum Termodynamiki i Spalania",+"arXiv arXiv e-prints",+"AsAc. Astronautica Acta",+"AsAer Astronautics Aeronautics",+"ASAJ. Acoustical Society of America Journal",+"AsBio Astrobiology",+"ASBTV Archenhold-Sternwarte Berlin-Treptow, Vortrage Schr.",+"ascl.sAstrophysics Source Code Library",+"ASCMO Advances in Statistical Climatology Meteorology and Oceanography",+"asc..rSpace Telescope ASC Instrument Science Report",+"asd..sAstrophysics Software Database",+"AsDyn Astrodynamics",+"ASFAS Academia Scientiarum Fennica Annales Series Physica",+"As&Ge Astronomiya i geodeziya",+"ASHRA ASHRAE Journal",+"AsJES Austrian Journal of Earth Sciences",+"AsJPh Asian Journal of Physics",+"ASL.. Advanced Science Letters",+"ASLLR Accademia di Scienze e Lettere Istituto Lombardo Rendiconti Serie della Classe di Scienze Matematiche e Naturali Sezione Scienze Matematiche Fisiche Chimiche e Geologiche",+"ASME. American Society of Mechanical Engineers",+"Asnau Astronautik",+"AsNot Astronomical Notices",+"AsNow Astronomy Now",+"ASNYN News Letter of the Astronomical Society of New York",+"ASPL. Leaflet of the Astronomical Society of the Pacific",+"ASPLS Leaflet of the Astronomical Society of the Pacific (Supplement)",+"ASPRv Astrophysics and Space Physics Reviews",+"ASSAB Academie Serbe des Sciences et des Arts Bulletin Classe des Sciences Techniques",+"ASSB. Annales de la Socié",+"AsSch Astronomie in der Schule",+"ASSFA Acta Societatis Scientarum Fennicae Series A",+"ASSF. Acta Societatis Scientarum Fennicae",+"ASSP. Astrophysics and Space Science Proceedings",+"AstAp Astronomy and Astro-Physics (formerly The Sidereal Messenger)",+"Ast.. Astronomy",+"AstBa Biblioteca Astrei Basarabene",+"AstBu Astrophysical Bulletin",+"Aster Aster",+"AstHe Astronomical Herald",+"AstL. Astronomy Letters",+"Astnm Astronomia UAI",+"AstPo Astropolitics",+"AstQ. Astronomy Quarterly",+"ASTRA Astrophysics and Space Sciences Transactions",+"astro arXiv Astrophysics e-prints",+"Astro Astronomy",+"ASTRP ASTRA Proceedings",+"Astr. The Astronomer",+"AstRv The Astronomical Review",+"AstSR Astronomical School's Report",+"AsUAI Astronomia. La rivista dell' Unione Astrofili Italiani",+"ATel1 The Astronomer's Telegram",+"ATel. The Astronomer's Telegram",+"AtEn. Atomnaia Energiia",+"AtERv Atomic Energy Review",+"ATi.. Astronomisk Tidsskrift",+"ATJAM ASME Transactions Series E Journal of Applied Mechanics",+"ATJDS ASME Transactions Journal of Dynamic Systems and Measurement Control B",+"ATJEG ASME Transactions Journal of Engineering Gas Turbines and Power",+"ATJEl ASME Transactions Journal of Electronic Packaging",+"ATJEM ASME Transactions Journal Engineering Materials and Technology",+"ATJEP ASME Transactions Journal of Engineering Power",+"ATJFE ASME Transactions Journal of Fluids Engineering",+"ATJHT ASME Transactions Journal of Heat Transfer",+"ATJLT ASME Transactions Journal of Lubrication Technology",+"ATJSE ASME Transactions Journal of Solar Energy and Engineering",+"ATJTr ASME Transactions Journal of Tribology",+"ATJTu ASME Transactions Journal of Turbomachinery",+"ATJVA ASME Transactions Journal of Vibration Acoustics",+"AtKe. Atomkernenergie",+"AtlVS Atlas Poiskovykh Kart Peremennykh Zvezd",+"ATMAB Association Technique Maritime et Aeronautique Bulletin",+"ATMAS Association Technique Maritime et Aeronautique Session Paris France ONERA TP",+"AtmEn Atmospheric Environment",+"Atmos Atmosphere",+"AtmRe Atmospheric Research",+"AtmTe Atmospheric Technology",+"atnf.pATNF Proposal",+"AtO.. Atmosphere Ocean",+"Atoms Atoms",+"AtOO. Atmospheric and Oceanic Optics",+"AtOpt Atmosphere Optics",+"AtPhy Atomic Physics",+"atp..pNASA ATP Proposal",+"ATR.. ATR Australian Telecommunication Research",+"AtSc. Atmospheric Science",+"AtScL Atmospheric Science Letters",+"ATsir Astronomicheskij Tsirkulyar",+"AtST. Atomisation Spray Technology",+"ATTM. AEG Telefunken Technische Mitteilungen",+"ATTTJ AT T Technical Journal",+"AUGGM Annales UMCS, Geographia, Geologia, Mineralogia et Petrographia",+"AuJA. Australian Journal of Astronomy",+"AuJES Australian Journal of Earth Sciences",+"AuJPA Australian Journal of Physics Astrophysical Supplement",+"AuJPh Australian Journal of Physics",+"AuMM. Australian Meteorological Magazine",+"AuMSJ Australian Mathematical Society Journal Series B -- Applied Mathematics",+"AuRob Autonomous Robots",+"AurPh Auroral physics",+"AUSPh Annales UMCS, Sectio AAA: PHYSICA",+"AuSRA Australian Journal of Scientific Research A Physical Sciences",+"Autom Automatica",+"AVest Astronomicheskii Vestnik",+"AVET. Atomno Vodorodnaia Energetika i Tekhnologiia",+"AVISS Astronomicheskii Vestnik Issledovaniia Solnechnoi Sistemy",+"AvKos Aviatsiia i Kosmonavtika",+"AvPE. Avtomatizatsiia Proektirovaniia Elektronike",+"AvSeM Aviation Space and Environmental Medicine",+"AVSOM American Association of Variable Stars Observers Monographs",+"AVSOR American Association of Variable Stars Observers Reports",+"AVSQS AVS Quantum Science",+"AvTek Aviatsionnaia Tekhnika",+"AvTel Avtomatika i Telemekhanika",+"Avtme Avtometriia",+"AvWST Aviation Week Space Technology",+"AWUTP Annals of West University of Timisoara - Physics",+"AzAJ. Azerbaijani Astronomical Journal",+"AZh.. Astronomicheskii Zhurnal",+"AZWis Astronomisches Zirkular der Akademie der Wissenschaften der UdSSR",+"BAAA. Boletin de la Asociacion Argentina de Astronomia La Plata Argentina",+"BAAPG Bulletin of the American Association of Petroleum Geologists",+"BAAS. Bulletin of the American Astronomical Society",+"BAAVC British Astronomical Association Variable Star Section Circular",+"BABel Bulletin Astronomique de Belgrade",+"BADPG Berlin East Germany Akademie Verlag GmbH Ergebnisse Plasmaphysik und Gaselektronik",+"BAFOE Bulletin Association Fran. Obs. Etoiles Variables",+"BAICz Bulletin of the Astronomical Institutes of Czechoslovakia",+"BaltA Baltic Astronomy",+"BAMaS Bulletin of the American Mathematical Society",+"BAMS. Bulletin of the American Meteorological Society",+"BAN.. Bulletin of the Astronomical Institutes of the Netherlands",+"BANS. Bulletin of the Astronomical Institutes of the Netherlands Supplement Series",+"BAOM. Boletin de la Astronomico Observatorio de Madrid",+"BAORB Bulletin of the Astronomical Observatoire Royale de Belgique",+"BaPhL Balkan Physics Letters",+"BAPS. Bulletin of the American Physical Society",+"BAPSS Bulletin de l'Academie Polonaise des Sciences Series des Sciences Mathematiques Astronomiques et Physiques",+"BARB. Bulletin de l'Academie Royale de Belgique",+"BASBr Bulletin of the Astronomical Society of Brazil",+"BASI. Bulletin of the Astronomical Society of India",+"BasR. Basin Research",+"BAth. National Observatory of Athens Greece Bulletin of the Astronomical Institute",+"BAVMM Berlin East Germany Akademie Verlag GmbH Shriftenreihe des Zentralinstituts Mathematik und Mechanik",+"BAVSM Berliner Arbeitsgemeinschaft fuer Veraenderliche Sterne - Mitteilungen",+"BAVSO Bulletin of the American Association of Variable Stars Observers",+"BAVSR BAV Rundbrief - Mitteilungsblatt der Berliner Arbeits-gemeinschaft fuer Veraenderliche Sterne",+"BAWMN Bayerische Akademie Wissenschaften mathematisch naturwissenschaftliche Klasse Sitzungsberichte",+"BayAn Bayesian Analysis",+"BBCEn BBC Engineering",+"BBGPC Berichte der Bunsen-Gesellschaft Physical Chemistry Chemical Physics Berichte",+"BBSAG Bulletin der Bedeckungsveraenderlichen-Beobachter der Schweizerischen Astronomischen Gesellschaft",+"BBUSM Babes Bolyai Universitas Studia Series Physica",+"BBUSS Babes Bolyai Universitas Studia Series Mathematica",+"BCAIC Bulletin of the Central Astronomical Institute of Czechoslovakia",+"BCFHT Bulletin d'information du telescope Canada-France-Hawaii",+"BCNRC Canada National Research Council Division Mechanical Engineering National Aeronautical Establishment Quarterly Bulletin",+"BCNRS Bulletin Signaletique - Centre National de la Recherche Scientifique",+"BCrAO Bulletin Crimean Astrophysical Observatory",+"BCSAB Bulletin Cl. Science Academy Royal de Belgique",+"BDus. Byulleten' Instituta Astrofiziki Dushanbe Akademiya Nauk Tadzhikskoj SSR",+"BdWis Bild der Wissenschaften",+"BeElM Beskontaktnye Elektricheskie Mashiny",+"BeiGe Beitraege zur Geophysik",+"BeiMP Beitraege zur Mineralogie und Petrographie",+"BeiRe Reprints Beijing Astronomical Observatory Academia Sinica",+"BePl. Beitraege Plasmaphysik",+"BEPM. Bielefeld Encounters in Physics and Mathematics",+"BerAJ Berliner Astronomisches Jarbuch",+"Bes1K Observatoire de Besancon",+"BESBe Beobachtungs-Ergebnisse der Koniglichen Sternwarte zu Berlin",+"BeSN. Be Star Newsletter",+"BFWSG Braunschweig Friedr Vieweg und Sohn GmbH",+"BGBGM Berlin Gebrueder Borntraeger Geoexploration Monographs Series",+"BGD.. Biogeosciences Discussions",+"BGeo. Biogeosciences",+"BGeod Bulletin Geodesique",+"BGNS. Bulletin Geodesique, Nouvelle Series",+"BGSA. Bollettino Geod. Scienzi Affini",+"BHarO Harvard College Observatory Bulletin",+"BIAst Bjull. Inst. Astrofizikii",+"BIBGI Bulletin d'Information du Bureau Gravimetrique International",+"BiBi. Bioinspiration and Biomimetics",+"BICDS Bulletin d'Information du Centre de Donnees Stellaires",+"BIEBe Bulletin d'Information d'Etoiles Be",+"BIHCD Bureau Internationale Heure, Paris, Circulaire",+"BiLuf Bildmessung und Luftbildwessen",+"BIMAF Boletin del Instituto de Matematica Astronomica y Fisica Universidad Nacional de Cordoba Argentina",+"BIMIA Bulletin of the Institute of Mathematics and Its Applications",+"BioFa Biofabrication",+"BioMa Biomedical Materials",+"Bion. Bionika",+"Biopk Biophysik",+"BioSc BioScience",+"BIRM. Brussels Institute Royal Meteorologique de Belgique",+"BITA. Byulleten' Instituta Teoreticheskoj Astronomii (Leningrad)",+"BITad Biulletini of the Astronomical Institute Akademiia Nauk Tadzhikskoi",+"BIT.. Behaviour & Information Technology",+"BITon Boletin del Instituto de Tonantzintla",+"BJAP. British Journal of Applied Physics",+"BJHS. The British Journal for the History of Science",+"BKAD. Beobachtungen der Kaiserlichen Universitaets-Sternwarte Dorpat",+"BKoAS Bulletin of Korean Astronomical Society",+"BKobO Bulletin of the Kobe Marine Observatory Kobe Japan",+"BKUJ. Beobachtungen der Kaiserlichen Universitaets-Sternwarte Jurjew",+"BLabR AT&",+"BlazD BLAZAR Data",+"BlDok Bolgarska Akademiia Nauk Doklady",+"BlgAJ Bulgarian Astronomical Journal",+"BlGeo Bulgarska Akademiia Naukite Geofizichni Institut Izvestiia",+"BlGJ. Bulgarian Geophysical Journal",+"BlGSp Bulgarsko Geofizichno Spisanie",+"BlJMH Bulgarian Journal of Meteorology and Hydrology",+"BlJPh Bulgarian Journal of Physics",+"BlJPS Bulgarian Journal of Physics Supplement",+"BlMat Bulgarska Akademiia Naukite Matematicheski Institut Izvestiia",+"BLPI. Bulletin of the Lebedev Physics Institute",+"BlSpi Bulgarska Akademiia Naukite Spisanie",+"BlTek Bulgarska Akademiia Naukite Institut Tekhnicheska Kibernetika Izvestiia",+"BlTse Bulgarska Akademiia Naukite Tsentralna Laboratoriia Geodeziia Izvestiia",+"BMai. Bulletin de la Station Astrophotographique de Mainterne",+"BMFRS Biographical Memoirs of Fellows of the Royal Society",+"BMNAS Biographical Memoirs National Academy of Sciences",+"BMOE. Boletin mensual del Observatorio del Ebro",+"BMP.. Biological and Medical Physics",+"BOBeo Bulletin de l'Observatoire Astronomique de Belgrade",+"BoLMe Boundary-Layer Meteorology",+"BOOde Odesskij Gosudarstvennyi Universitet im. I. I. Mechnikova Byulletin Astronomicheskoj Observatorii",+"BOPul Bulletin (Izvestiya) de l'Observatoire Central a Poulkovo",+"BoSAI Bollettino della Societa Astronomica Italiana",+"BOTor Biuletyn Obserwatoium Astronomicznego Uniwersytetu M. Kopernika w Toruniu",+"BOTT. Boletin de los Observatorios Tonantzintla y Tacubaya",+"BPAS. Bulletin of Pure and Applied Science (Physics)",+"BpBeS Biophysics and Bioengineering Series",+"BpJ.. Biophysical Journal",+"BpRL. Biophysical Reviews and Letters",+"BRASP Bulletin of the Russian Academy of Sciences, Physics",+"BrJPh Brazilian Journal of Physics",+"BRMIC Behavior Research Methods Instruments and Computers",+"BROA. Boletin Real Instituto y Observatorio de la Armada (San Fernando, Cadiz)",+"BROGS Belgian Royal Observatory Communications Series Geophysics Series",+"BrWK. Brennstoff Waerme Kraft",+"BSAE. Bulletin of the Soviet Antarctic Expedition",+"BSAF. Bulletin de la Societe Astronomique de France",+"BSAFR Bulletin de la Societe Astronomique de France et Revue Mensuelle d'Astronomie, de Meteorologie et de Physique du Globe",+"BSAL. Bulletin de la Societe Astronomique de Liege",+"BSAO. Bulletin of the Special Astrophysics Observatory",+"BSASP Bulletin de la Societe des Amis des Sciences et des Lettres de Poznan",+"BSAst Bulletin of the Section of Astronomy",+"BSBA. Bulletin de la Societe Belge d'Astronomie",+"BSD.. Hamburger Sternwarte Bergedorf",+"BSEEA Iasi Institutul Politehnic Buletinul Sectia Electrotehnica Electronica Automatizari",+"BSMMT Iasi Institutul Politehnic Buletinul Sectia Matematica Mecanica Teoretica Fizica",+"BSMT. Iasi Institutul Politehnic Buletinul Sectia Mecanica Tehnica",+"BSolD Byulletin Solnechnye Dannye Akademie Nauk SSSR",+"BSRSL Bulletin de la Societe Royale des Sciences de Liege",+"BSSR. AN BSSR Institut Teplo i Massoobmena Vsesoiuznaia Konferentsiia Teplomassoobmenu Minsk Belorussian SSR Preprint",+"BStaO Byulleten' Stalinabadskoj Astronomicheskoj Observatorii Akademiya Nauk Tadzhikskoj SSR",+"BSTJ. Bell System Technical Journal",+"BTasO Bulletin of the Tashkent Observatory",+"BTE.. British Telecommunications Engineering",+"BToIT Bulletin of the Tokyo Institute of Technology",+"BTok. Bulletin of the Tokyo Astronomical Observatory",+"BTSNU Bulletin of Taras Shevchenko National University of Kyiv Astronomy",+"BTUM. Braunschweig Technische Universitaet Mitteilungen",+"BUAAJ Beijing University Aeronautics and Astronautics Journal",+"BuAkK Budapest Akademiai Kiado",+"BuAsI Bulletin Astronomique, Serie I",+"BuAsR Bulletin Astronomique, Revue Generale des Travaux Astronomiques",+"BuAst Bulletin Astronomique",+"BuAtS Bulletin of the Atomic Scientists",+"BUBes Bulletin of the University of Besancon Observatory",+"BuChr Bulletin Chronometrique (Besancon)",+"BuENS Osaka Prefecture University Bulletin Series Engineering Natural Sciences",+"BUEOP Bulletin of Ukrainian Earth Orientation Parameters Laboratory",+"BuGeo Bulletin of Geosciences",+"BuIPS Bulletin of the Israel Physical Society",+"BuKwa Bulletin of the Kwasan Observatory, Kyoto",+"BuLMS Bulletin of the London Mathematical Society",+"BuLPI Bulletin of the Lebedev Physics Institute",+"BuLyo Bulletin de l'Observatoire de Lyon",+"BuMat Bulletin Mathematique",+"BuONC Bulletin of the Special Astrophysical Observatory, Northern Caucasus",+"BuSSA The Bulletin of the Seismological Society of America",+"BVol. Bulletin of Volcanology",+"BVVSA Bratislava Veda Vydavatelstvo Slovenskej Akademie Vied",+"BYam. Bulletin of the Yamagata University Yamagata Japan",+"ByuRe Byurakan Astrophysical Observatory Armenia USSR Reprints",+"CaASJ Canadian Aeronautics and Space Journal",+"CAD.. Computer-Aided Design",+"CAGHS Correspondance Astronomique, Geographique, Hydrographique et statistique",+"CahPh Cahiers de Physique",+"CaJCh Canadian Journal of Chemistry",+"CaJES Canadian Journal of Earth Sciences",+"CaJPh Canadian Journal of Physics",+"CaJPS Canadian Journal of Physics Supplement",+"CaJRS Canadian Journal of Remote Sensing",+"CANM. Communications in Applied Numerical Methods",+"CAP.. Current Applied Physics",+"CAPJ. Communicating Astronomy with the Public Journal",+"CaRes Cancer Research",+"CarOB Carter Observatory Wellington New Zealand Astronomical Bulletins",+"CAS.. Cambridge Astrophysics Series",+"CASI. CASI Transactions",+"CASJ. Canadian Aeronautics and Space Journal",+"CASJQ Canadian Aeronautics and Space Journal Quarter",+"CBET. Central Bureau Electronic Telegrams",+"CBOAA Comet Bulletin of the Oriental Astronomical Association",+"CCCUK Comet Circular of the Chevchenkov University Kiev",+"CCDA. CCD Astronomy",+"CCM.. Clays and Clay Minerals",+"CCoPh Communications in Computational Physics",+"CCpFS Ceskoslovensky Casopis pro Fyziku Sekce",+"CEAB. Central European Astrophysical Bulletin",+"CEAS. CEAS Space Journal",+"C&E.. Ciel et Espace",+"CEE.. Computers and Electrical Engineering",+"CEEJ. Canadian Electrical Engineering Journal",+"CEEng Civil And Environmental Engineering Reports",+"CEER. Civil And Environmental Engineering Reports",+"CEGB. CEGB Research",+"CEJ.. Chemistry A European Journal",+"CEJE. Central European Journal of Engineering",+"CEJG. Central European Journal of Geosciences",+"CEJGl Central European Journal of Geology",+"CEJPh Central European Journal of Physics",+"CeMDA Celestial Mechanics and Dynamical Astronomy",+"CeMec Celestial Mechanics",+"Cent. Centaurus",+"CEnTp Engineering Thermophysics China",+"CEST. Communications Gillies Inc Electronic Systems in Transportation",+"CESW. Combustion, Explosion and Shock Waves",+"CF... Computers and Fluids",+"CG... Computers and Geosciences",+"CGDAM Conformal Geometry and Dynamics of the American Mathematical Society",+"CGIP. Computer Graphics Image Processing",+"ChA&A Chinese Astronomy and Astrophysics",+"ChA.. Chinese Astronomy",+"Chall Challenges",+"Chaos Chaos",+"ChCom Chemical Communications",+"ChEG. Chemie der Erde / Geochemistry",+"ChEnC Chemical Engineering Communications",+"ChEnN Chemical Engineering News",+"ChEnS Chemical Engineering Science",+"ChGCS Chemosphere - Global Change Science",+"ChGeo Chemical Geology",+"ChIEJ Chinese Institute of Engineers Journal",+"ChJAA Chinese Journal of Astronomy and Astrophysics",+"ChJA. Chinese Journal of Aeronautics",+"ChJAS Chinese Journal of Astronomy and Astrophysics Supplement",+"ChJCP Chinese Journal of Chemical Physics",+"ChJG. Chinese Journal of Geophysics",+"ChJIR Chinese Journal of Infrared Research",+"ChJLB Chinese Journal of Lasers B",+"ChJL. Chinese Journal of Lasers",+"ChJME Chinese Journal of Mechanical Engineering",+"ChJNP Chinese Journal of Nuclear Physics",+"ChJOL Chinese Journal of Oceanology and Limnology",+"ChJPh Chinese Journal of Physics",+"ChJS. Chinese Journal of Semiconductors",+"ChJSS Chinese Journal of Space Science",+"Chmsp Chemosphere",+"ChNew Chandra News",+"CHOCS CHOCS",+"ChOE. China Ocean Engineering",+"ChOpL Chinese Optics Letters",+"ChPAS Republic of China National Science Council Proceedings Applied Sciences",+"ChPhB Chinese Physics B",+"ChPhC Chinese Physics C",+"ChPhL Chinese Physics Letters",+"ChPhy Chinese Physics",+"ChRST China Rept Sci Technol JPRS CST",+"ChRv. Chemical Reviews",+"ChSAJ Chinese Society of Astronautics Journal",+"ChSBu Chinese Science Bulletin",+"ChSMJ Chinese Society of Mechanical Engineers Journal",+"Chsph Chemosphere",+"ChSST Chinese Space Science Technology",+"CiARI Circular of the Astronomisches Recheninstitut",+"CiBAA Circular of the British Astronomical Association",+"CIBu. COSPAR Information Bulletin",+"CIDA. CIDA",+"Ciel. Le Ciel",+"CiInf Circ. Inf.",+"CiPoJ Circumpolar Journal",+"CIPSG Canadian Information Processing Society Graphics Interface",+"CiSSV Circolare Interna della Sezione Stelle Variabili dell'Unione Astrofili Italiani",+"CITM. Chubu Institute Technology Memoirs",+"CiUO. Circular of the Union Observatory Johannesburg",+"CJChE Canadian Journal of Chemical Engineering",+"CJECE Canadian Journal of Electrical Computer Engineering",+"CJLTP Chinese Journal of Low Temperature Physics",+"CJRes Canadian Journal of Research",+"CJSMT Canadian Journal of Science Mathematics and Technology Education",+"CKH.. Chagyo Kenkyu Hokoku (Tea Research Journal)",+"ClCh. Climatic Change",+"ClDy. Climate Dynamics",+"CLic2 Contributions of Lick Observatory, Series II",+"CliPa Climate of the Past",+"CliPD Climate of the Past Discussions",+"ClMin Clay Minerals",+"ClRes Climate Research",+"CLS.. Curved and Layered Structures",+"CMAME Computer Methods in Applied Mechanics and Engineering",+"CMaPh Communications in Mathematical Physics",+"CMDRG Chislennye Metody Dinamike Razrezhennykh Gazov",+"CMMPh Computational Mathematics and Mathematical Physics",+"CmpEn Composites Engineering",+"CmPhy Communications Physics",+"CMPhy Condensed Matter Physics",+"Cmplx Complexity",+"CmpMa Composites Manufacturing",+"CMPNC Cambridge Monographs on Particle Physics, Nuclear Physics and Cosmology",+"CMPPh Cambridge Monographs on Plasma Physics",+"CmpSt Composite Structures",+"CMT.. Continuum Mechanics and Thermodynamics",+"CMwA. Computers and Mathematics with Applications",+"CMWCI Contributions from the Mount Wilson Observatory / Carnegie Institution of Washington",+"CNan. Current Nanoscience",+"CNME. Communications in Numerical Methods in Engineering",+"CNRAe CNR Aeritalia S",+"CNSMP Comet News Service, McDonnell Planetarium",+"CNSNS Communications in Nonlinear Science and Numerical Simulations",+"CoAMP Comments on Atomic and Molecular Physics",+"CoAnk Communications of the Department of Astronomy of Ankara University",+"CoAsi Contributi dell'Osservatorio Astrofisica dell'Universita di Padova in Asiago",+"CoASP Comments on Astrophysics and Space Physics",+"CoAst Communications in Asteroseismology",+"CoBAO Communications of the Byurakan Astrophysical Observatory",+"CoBos Contributions from the Bosscha Observervatory",+"CoBrn Contributions of the Public Observatory and Planetarium in Brno",+"CoCam Contributions from the Cambridge Observatory England",+"CoCMP Comments on Condensed Matter Physics",+"CoCoi Comunicacoes do Observatonio Astronomico da Universidade de Coimbra",+"CoCom Control and Computers",+"CODAB CODATA Bulletin",+"CoDAO Contributions from the Dominion Astrophysical Observatory in Victoria",+"CoDDO Communications from the David Dunlap Observatory",+"CoDun Contributions from the Dunsink Observatory Dublin Ireland",+"Coel. Coelum Periodico Bimestrale per la Divulgazione dell'Astronomia",+"CoFl. Combustion and Flame",+"CoFra Consiglio Nazionale delle Ricerche Italia. Laboratorio di Astrofisica Frascati Roma Contributi",+"CoGG. Contributions to Geophysics and Geodesy",+"CogPh Cogent Physics",+"CoIAP Contributions de l'Institut d'Astrophysique de Paris Serie A",+"CoKit Contributions from the Kitt Peak National Observatory",+"CoKon Commmunications of the Konkoly Observatory Hungary",+"CoKwa Contributions from the Kwasan and Hida Observatories University of Kyoto",+"CoKyo Contributions from the Institute of Astrophysics and Kwasan Observatory Kyoto",+"CoLic Contributions of Lick Observatory",+"CoLon Communications of the University of London Observatory",+"CoLou Contributions of the Louisiana State University Observatory Baton Rouge Louisiana",+"CoLPL Communications of the Lunar and Planetary Laboratory",+"ColSu Colloids and Surfaces",+"ComAC Computational Astrophysics and Cosmology",+"ComAp Comments on Astrophysics",+"CoMar Circulaires de l'Observatoire de Marseille",+"CoMat Communications Materials",+"ComBr Communication Broadcasting",+"CoMcD Contributions from the McDonald Observatory University of Texas Fort Davis",+"CoMil Contributions dell'Osservatorio Astrononia di Milano-Merate",+"ComMP Comments in Modern Physics",+"ComMS Computational Materials Science",+"Commu Communications",+"CoMP. Contributions to Mineralogy and Petrology",+"ComPh Computers in Physics",+"CompJ The Computer Journal",+"CompM Computational Mechanics",+"Compo Composites",+"Compr Computer",+"Compu Computing",+"CoMRA Concepts in Magnetic Resonances A",+"CoMRB Concepts in Magnetic Resonances B",+"ComSE Computing Systems in Engineering",+"ComSo Communications Society",+"ComSp Commercial Space",+"ComST Composites Science Technology",+"COMTR COMSAT Technical Review",+"ConAP Contributions to Atmospheric Physics/Beitraege zur Physik der Atmosphaere",+"ConCP Contemporary Concepts in Physics",+"CoNet Journal of Communications and Networks",+"CONMS Contributions of the Observatory of New Mexico State University, Las Cruces Special Series",+"ConPh Contemporary Physics",+"CoNPP Comments on Nuclear and Particle Physics",+"ConSc Connection Science",+"CoOpt Computer Optics",+"CoORB Communications de l'Observatoire Royal de Belgique",+"COP.. Coherent Optical Phenomena",+"CoPer Contributions of Perkins Observatory",+"CoPhC Computer Physics Communications",+"CoPhR Computer Physics Reports",+"CoPPC Comments on Plasma Physics and Controlled Fusion",+"CoPP. Contributions to Plasma Physics",+"CoPri Contributions from the Princeton University Observatory",+"CoROE Communications from the Royal Observatory Edinburgh",+"CorRe Coral Reefs",+"CoRSE Royal Society Edinburgh Communications Physical Sciences",+"CoRut Contributions from the Rutherford Observatory of Columbia University New York",+"CosEl Cosmic Electrodynamics",+"CoSka Contributions of the Astronomical Observatory Skalnate Pleso",+"CoSkL Contributions of the Astronomical Observatory Skalnate Pleso Letters",+"CoSkS Contributions of the Astronomical Observatory Skalnate Pleso Supplement",+"Cosmo COSMOS",+"CosRe Cosmic Research",+"CosSe Cosmic Search",+"COSSM Current Opinion in Solid State and Materials Science",+"CoStA Communications from the University Observatory St Andrews Scotland",+"CoStr Computers and Structures",+"CoThe Contributions from the Astronomical Department of the University of Thessaloniki",+"CoTok Contributions from the Department of Astronomy University of Tokyo",+"CoTol Contributions from the Cerro Tololo Inter-American Observatory",+"CoTPh Communications in Theoretical Physics",+"CoVVO Contributions of the Van Vleck Observatory",+"CoWas Contributions from the Washburn Observatory of the University of Wisconsin",+"CoWat Contributions of the University of Waterloo Observatory",+"CPAM. Communications in Pure Applied Mathematics",+"CP... Chemical Physics",+"CPh.. Coherent Phenomena",+"CPhD. Cape Photographic Durchmusterung",+"CPL.. Chemical Physics Letters",+"CPMCM Commentationes Physico-Mathematicae et Chemico-Medicae",+"CPM.. Computational Particle Mechanics",+"CPPM. Clinical Physics and Physiological Measurement",+"CPR.. Chemical Physics Reports",+"CPSS. Chemical Physics of Solid Surfaces",+"CQGra Classical and Quantum Gravity",+"CR2.. Academie des Sciences Comptes Rendus Serie Mecanique Physique Chimie Sciences de la Terre et de l Univers",+"CRABS Comptes Rendus de l'Academie Bulgare des Sciences",+"CRASA Academie des Sciences Paris Comptes Rendus Vie Academique Semester Supplement",+"CRAS. Academie des Sciences Paris Comptes Rendus",+"CRASB Academie des Sciences Paris Comptes Rendus Serie B Sciences Physiques",+"CRASE Comptes Rendus de l'Acadé",+"CRASG Academie des Sciences Paris Comptes Rendus Serie Generale La Vie des Sciences",+"CRASM Academie des Sciences Paris Comptes Rendus Serie Sciences Mathematiques",+"CRASP Academie des Sciences Paris Comptes Rendus Serie Physique Astrophysique",+"CRB.. C.R. Acad. Sci. Ser. B1",+"CR... Comptes Rendus Academie des Sciences (serie non specifiee)",+"CRGeo Comptes Rendus Geoscience",+"CRJS. Comptes Rendus sur les Journees de Strasbourg",+"CRLJ. Communications Research Laboratory Journal",+"CRLRv Communications Research Laboratory Review",+"CRMat Comptes Rendus Mathematique",+"CRMec Comptes Rendus Mecanique",+"CRPhy Comptes Rendus Physique",+"CRSPH Compte Rendu des Seances de la Societe de Physique et d'Histoire Naturelle de Geneve",+"CRSSM Critical Reviews in Solid State & Materials Sciences",+"Cryo. Cryogenics",+"CryRp Crystallography Reports",+"CSASG Contributions of the Slovak Academy Sciences Geophysical Institute",+"CSci. Current Science",+"CS&D. Computational Science and Discovery",+"CSE.. Computing in Science and Engineering",+"CSEd. Computer Science Education",+"CSF.. Chaos Solitons and Fractals",+"CSFX. Chaos Solitons and Fractals: X",+"CSMA. Computational Structural Mechanics and Applications",+"CSMPA Ankara University Faculty of Science Communications, Series A2-Ad Physical Sciences and Engineering",+"CSPSE Ankara Universite Faculte des Sciences Communications Serie Mathematiques Physique et Astronomie",+"CSR.. Continental Shelf Research",+"CSSE. Cultural Studies of Science Education",+"CSSP. Circuits Systems and Signal Processing",+"CST.. Combustion Science and Technology",+"C&T.. Ciel et Terre",+"CTE.. Ciencias de la Tierra y del Espacio",+"CTGeo Contemporary Trends in Geoscience",+"CTM.. Combustion Theory and Modelling",+"CTMPC Cambridge Topics in Mineral Physics and Chemistry",+"CTmp. Connaissance des Temps",+"CuCo. Culture and Cosmos",+"CVGIP Computer Vision Graphics and Image Processing",+"CzJPh Czechoslovak Journal of Physics",+"CzJPS Czechoslovak Journal of Physics Supplement",+"CzMJ. Czechoslovak Mathematical Journal",+"DatSJ Data Science Journal",+"Defek Defektoskopiia",+"DefEl Defense Electronics",+"DeHyZ Deutsche Hydrographische Zeitschrift",+"DeScE Defense Science Electronics",+"DFVLR DFVLR",+"DGKBA Deutsche Geodaetische Kommission Bayer. Akad. Wiss.",+"DGKBB Deutsche Geodaetische Kommission Bayer. Akad. Wiss. B",+"DGKGN Deutsche Geodaetische Kommission Gravity Network West Germany DSGN Data Adjustment",+"Dimen Dimensions",+"DImTe Display Imaging Technology",+"DIO.. DIO",+"DiRaG Dinamika razrezhennykh gazov",+"DISA. DISA Information",+"Disc. Discover",+"DISER Disciplinary and Interdisciplinary Science Education Research",+"DiSis Dinamicheskie Sistemy",+"Displ Displays",+"DLGRM DLGR Magnetofluiddyn",+"Dlib. D-Lib Magazine",+"DLRNa DLR Nachrichten",+"DMJ.. Defense Management Journal",+"DnU.. Differentsialnye Uravneniia",+"DoANT Doklady Akademiia Nauk TadzhSSR",+"DoArm Akademiia Nauk Armianskoi SSR Doklady",+"DoAze Akademiia Nauk Azerbaidzhanskoi SSR Doklady",+"DoBan Doklady Bolgarskoi Akademiia Nauk",+"DoBel Akademiia Nauk BSSR Doklady",+"DOIAP Documentation des Observateurs Institut d'Astrophysique de Paris",+"DokAN Doklady Akad Nauk Minerologia USSR",+"DokES Doklady Earth Sciences",+"DokPh Physics - Doklady",+"DorPo Dornier Post",+"DoSSR Akademiia Nauk SSSR Doklady",+"DoTad Akademiia Nauk Tadzhikskoi SSR Doklady",+"DoUkr Akademiia Nauk Ukrains koi RSR Dopovidi Seriia Fiziko Matematichni ta Tekhnichni Nauki",+"DoUzb Akademiia Nauk Uzbekskoi SSR Doklady",+"DPhyG Deutsche Physikalische Gesellschaft",+"DPM.. Dinamika i Prochnost Mashin",+"DRM.. Diamond and Related Materials",+"DSCS. Dynamics and Statistics of the Climate System",+"DSE.. Distributed Systems Engineering",+"DSJ.. Defense Science Journal",+"DSNPR Deep Space Network Progress Report",+"DSO.. Double Star Observer",+"DSP.. Digital Signal Processing",+"DSRA. Deep Sea Research A",+"DSRB. Deep Sea Research B",+"DSR.. Deep Sea Research",+"DSRI. Deep Sea Research Part I: Oceanographic Research",+"DSRII Deep Sea Research Part II: Topical Studies in Oceanography",+"DSRMC Defense Systems Review Military Communications",+"DSROA Deep Sea Research and Oceanographic Abstracts",+"DSSC. Double Star Section Circulars",+"DSSN. Delta Scuti Star Newsletter",+"DudOR Dudley Observatory Reports",+"DunOP Dunsink Observatory Publications",+"DunRe Dunsink Observatory Reprints",+"DWES. Drinking Water Engineering and Science",+"DyAtO Dynamics of Atmospheres and Oceans",+"DynCo Dynamics and Control",+"EaEvS Earth and Evolution Sciences",+"EaFut Earth's Future",+"EaInt Earth Interactions",+"EartD eEarth Discussions",+"Earth eEarth",+"EaSci Earthquake Science",+"EBBT. Emerging Biochemical and Biophysical Techniques",+"EBCi. Eclipsing Binaries Circulars",+"E&C.. Electronics and Communications",+"EcGH. Eclogae geologae Helvetii",+"EcGou Ecole de Goutelas",+"ECLRv Electrical Communication Laboratories Review",+"ECM.. Energy Conversion Management",+"ECMS. Estuarine and Coastal Marine Science",+"ECSS. Estuarine Coastal and Shelf Science",+"E&E.. Elektromashinostroenie i Elektrooborudovanie",+"EEEV. Earthquake Engineering and Engineering Vibration",+"EERSA East Europe Rept Sci Affairs JPRS",+"EERST East European Rept Sci. Technol. JPRS ESA",+"EES.. Environmental Earth Sciences",+"EET.. Electrochemical Energy Technology",+"EExSc Earth and Extraterrestrial Sciences",+"EFM.. Environmental Fluid Mechanics",+"EGSGA E&",+"EIUEN ESA IUE Newsletter",+"EJASP EURASIP Journal on Applied Signal Processing",+"EJCM. European Journal of Computational Mechanics",+"EJEE. European Journal of Engineering Education",+"EJMF. European Journal of Mechanics B Fluids",+"EJMin European Journal of Mineralogy",+"EJMS. European Journal of Mechanics Solids",+"EJPh. European Journal of Physics",+"EJSE. European Journal of Science Education",+"EJSM. e-Journal of Soft Materials",+"EJSta Electronic Journal of Statistics",+"EJTP. Electronic Journal of Theoretical Physics",+"Elast Elastic",+"ElBah Elektrische Bahnen",+"Elecm Electromagnetics",+"Elek. Elektronika",+"Eleme Elements",+"Elem. Elektromekhanika",+"EL... EPL (Europhysics Letters)",+"EleSt Electronic Structure",+"ElLC. Electrotechnical Laboratory Circulars",+"ElL.. Electronics Letters",+"ElMod Elektronnoe Modelirovanie",+"ElP.. Electronics Power",+"ElPro Electronic Progress",+"ElTA. Elektronnaia Tekhnika Avtomatike",+"ElUn. El Universo",+"ElW.. Electrowaerme International",+"EMCT. EMC Technology",+"E&M.. Elektrotechnik und Maschinenbau",+"eMetN eMeteorNews",+"EML.. Electronic Materials Letters",+"EM&P. Earth Moon and Planets",+"EnAt. Energia es Atomtechnika",+"EnC.. Energy Conversion",+"Endvr Endeavour",+"EnEng Environmental Engineering",+"Energ Energetika",+"ENews Europhysics News",+"EnFM. Engineering Fracture Mechanics",+"EngAn Engineering Analysis",+"EngCo Engineering Computations",+"EnGeo Environmental Geology",+"EnMan Environmental Management",+"EnOp. Engineering Optimization",+"EnSci Engineering and Science",+"EnST. Environmental Science and Technology",+"EntIS Enterprise Information Systems",+"EnTR. Energy Technology Review",+"Entro Entropie",+"Entrp Entropy",+"EnUK. Energy",+"EOAST Earth-Oriented Applications and Space Technology",+"EObsC Einstein Observatory Catalog of IPC X-ray Sources",+"EOSD. Electro Optical Systems Design",+"EOSTr EOS Transactions",+"EPJA. European Physical Journal A",+"EPJAM EPJ Applied Metamaterials",+"EPJAP European Physical Journal Applied Physics",+"EPJAS European Physical Journal A Supplement",+"EPJB. European Physical Journal B",+"EPJC. European Physical Journal C",+"EPJCS European Physical Journal C Supplement",+"EPJD. European Physical Journal D",+"EPJE. European Physical Journal E",+"EPJH. European Physical Journal H",+"EPJNS EPJ Nuclear Sciences &",+"EPJP. European Physical Journal Plus",+"EPJPv EPJ Photovoltaics",+"EPJQT EPJ Quantum Technology",+"EPJST European Physical Journal Special Topics",+"E&PP. Earth and Planetary Physics",+"EPRIJ EPRI Journal",+"EPSC. European Planetary Science Congress",+"EP&S. Earth, Planets, and Space",+"E&PSL Earth and Planetary Science Letters",+"eRad. eRadiant, Journal of the Dutch Meteor Society",+"ERCom Environmental Research Communications",+"ER... Environmental Research",+"ERExp Engineering Research Express",+"ERL.. Environmental Research Letters",+"ErNW. Ergebnisse der exakten Naturwissenschaften",+"ERST. Europe Report Science Technology",+"ESABu ESA Bulletin",+"ESAHR ESA History Study Reports",+"ESAJ. ESA Journal",+"ESASM ESA Scientific & Technical Memoranda",+"ESAST ESA Scientific Technical Review",+"ESATM ESA Training Manual",+"ESC.. ACS Earth and Space Chemistry",+"ESDD. Earth System Dynamics Discussion",+"ESD.. Earth System Dynamics",+"E&S.. Earth in Space",+"ESE.. Earth Systems and Environment",+"ESF.. Earth Science Frontiers",+"ESIL. Eruptive Stars Information Letter",+"ESN.. European Science Notes",+"ESOB. European Southern Observatory ESO Bulletin",+"ESOSP European Southern Observatory Scientific Preprints",+"ESOSR European Southern Observatory Scientific Report",+"ESPL. Earth Surface Processes and Landforms",+"ESRv. Earth Science Reviews",+"ESSDD Earth System Science Data Discussions",+"ESSD. Earth System Science Data",+"E&SS. Earth and Space Science",+"ESSFR IEICE ESS Fundamentals Review",+"EssPh Essays in Physics",+"ESuDD Earth Surface Dynamics Discussions",+"ESuD. Earth Surface Dynamics",+"ETATF Eesti NSV Teaduste Akadeemia Toimetised Fuusika Matemaatika",+"ETRE. Elektrosviaz Telecommunications Radio Engineering Telecommunications",+"ETTRT European Transactions Telecommunications Related Technologies",+"ETWQ. Environmental Toxicology and Water Quality",+"EUCAS EUCASS Proceedings Series",+"EURPE EUREKA: Physics and Engineering",+"EurSS Eurasian Soil Science",+"EuRv. European Review",+"EVest Elektrotehniski Vestnik",+"ExA.. Experimental Astronomy",+"ExFl. Experiments in Fluids",+"ExG.. Exploration Geophysics",+"ExHT. Experimental Heat Transfer",+"ExM.. Experimental Mechanics",+"EXOSA EXOSAT Express",+"ExT.. Experimental Techniques",+"ExTFS Experimental Thermal Fluid Science",+"Extr. Extraction",+"FACM. Functiones et Approximatio Commentarii Mathematici",+"FaDi. Faraday Discussions",+"FaTr. Faraday Transactions",+"FBS.. Few-Body Systems",+"FCPh. Fundamentals of Cosmic Physics",+"F&CRe Flower and Cook Observatory Reprints",+"FCS.. Functional Composites and Structures",+"FFEMS Fatigue and Fracture of Engineering Materials and Structures",+"F&IER Forschung im Ingenieurwesen Engineering Research",+"F&I.. Forschung im Ingenieurwesen",+"FiIO. Fiber and Integrated Optics",+"FiMek Fizicheskaia Mekhanika",+"FiMos Akademiia Nauk SSSR Otdelenie Obshchei Fiziki i Astronomii Nauchnaia Sessiia Moscow USSR Uspekhi Fizicheskikh Nauk",+"FiSSR Akademiia Nauk Tadzhikskoi SSR Fiziko Tekhnicheskii Institut Dyushambe Tadzhik SSR Akademiia Nauk Tadzhikskoi SSR Doklady",+"FiUkr Akademiia Nauk Ukrain skoi RSR Dopovidi Seriia Fiziko Matematichni ta Tekhnichni Nauki",+"FizA. Fizika A",+"FizAO Akademiia Nauk SSSR Fizika Atmosfery i Okeana",+"FizAS Fizika Aerodispersnykh Sistem",+"FizB. Fizika B",+"FizCh Fizyki i Chemii Seria Fizyka",+"FizEl Fizicheskaia Elektronika",+"Fiz.. Fizika",+"FizGV Fizika Goreniia i Vzryva",+"FizKM Fiziko Khimicheskaia Mekhanika Materialov",+"FizKO Fizika i Khimiia Obrabotki Materialov",+"FizMM Fizika Metallov i Metallovedenie",+"FizMS Fizika Mnogochastichnykh Sistem",+"FizNT Fizika Nizkikh Temperatur",+"FizPl Fizika Plazmy",+"FizSz Fizika Sz.",+"FizTT Fizika Tverdogo Tela",+"FizTV Fizika i Tekhnika Vysokikh Davlenii",+"FizZS Fizika Zhidkogo Sostoianiia",+"FlDy. Fluid Dynamics",+"FlDyR Fluid Dynamics Research",+"FlDyT Fluid Dynamics Transactions",+"FlMSR Fluid Mechanics Soviet Research",+"Fluid Fluidika",+"FluQ. Fluids Quarterly",+"FMEC. Frontiers of Mechanical Engineering in China",+"F&M.. Feinwerktechnik und Messtechnik",+"FML.. Functional Materials Letters",+"FNCN. Fullerene Nanotubes and Carbon Nanostructures",+"FNL.. Fluctuation and Noise Letters",+"FoGeo Fotointerpretacja w Geografii",+"FoPh. Foundations of Physics",+"FoPhL Foundations of Physics Letters",+"ForPh Fortschritte der Physik",+"ForPW Fortschritte der Physikalischen Wissenschaften",+"Fract Fractals",+"FrASS Frontiers in Astronomy and Space Sciences",+"FrCh. Frontiers in Chemistry",+"FrEaS Frontiers in Earth Science",+"Freq. Frequenz",+"FrES. Frontiers of Earth Science",+"FRFI. Flug Revue Flugwelt International",+"FrInJ Journal of The Franklin Institute",+"FrMat Frontiers in Materials",+"FrME. Frontiers of Mechanical Engineering",+"FrMS. Frontiers of Materials Science",+"FrP.. Frontiers in Physics",+"FrPhC Frontiers of Physics in China",+"FrPhy Frontiers of Physics",+"FST.. Fullerene Science and Technology",+"FSTJ. Fujitsu Scientific Technical Journal",+"FTC.. Flow, Turbulence and Combustion",+"FTP.. Fundamental Theories of Physics",+"Fut.. Futures",+"Futur Future Spring",+"Gaea. Gaea - Journal of Geoscience",+"GAe.. Geomagnetizm i Aeronomiia",+"Galax Galaxies",+"GalEl Galilean Electrodynamics",+"galx.pGALEX Proposal",+"GAM.. Geophysics and Astrophysics Monographs",+"GaMuM Gesellschaft Angewandte Mathematik und Mechanik Workshop Paris France",+"GApFD Geophysical and Astrophysical Fluid Dynamics",+"GAst. Giornale di Astronomia",+"GATAN Gesellschaft Aerosolforschung Tagung ueber Aerosole Naturwissenschaft Medizin und Technik Messtechnik und technische Anwendung",+"GazA. Gazette Astronomique",+"GazAM Gazette Astronomique Memoires",+"GazT. Gazodinamika i Teploobmen",+"GBioC Global Biogeochemical Cycles",+"GBzG. Gerlands Beitraege zur Geophysik",+"GCarp Geologica Carpathica",+"GCBio Global Change Biology",+"GCN1. GRB Coordinates Network",+"GCN2. GRB Coordinates Network",+"GCNew Galactic Center Newsletter",+"GCN.. GRB Coordinates Network",+"GCNR. GCN Report",+"GCRV. Carnegie Institute Washington D.C. Publication",+"GDS.. Geophysical Developments Series",+"Ge&Ae Geomagnetism and Aeronomy",+"GeAer Geodeziia i Aerofotos",+"GeCar Geodesy and Cartography",+"GeCAS Geochimica et Cosmochimica Acta Supplement",+"GeChr Geochronology",+"GECJR GEC Journal Research",+"GeCoA Geochimica et Cosmochimica Acta",+"GeGe. Geophysica et Geodaetica",+"GeIss Geoinformation Issues",+"GeKaA Geodeziia Kartografiia i Aerofotos",+"GeKar Geodeziia i Kartografiia",+"Gelio Geliotekhnika",+"Gemin GEMINI Newsletter Royal Greenwich Observatory",+"Gen1K Observatoire de Geneve",+"GeoAc Geodinamica Acta",+"GEOCA GEOS Circular on Small-Amplitude Variables",+"GEOCE GEOS Circular on Eclipsing Binaries",+"Geoch Geochemistry",+"GeocI Geochemistry International",+"GeocJ Geochemical Journal",+"GEOCR GEOS Circular on RR Lyr Type Variables",+"GEOCS Semi-Regular Variables",+"Geode Geofisica Internacional",+"GeofI Geofisica Internacional",+"Geo.. Geology",+"GeoGl Geodetski Glasnik",+"GeoIn Geocarto International",+"GeoIs Geomagnitnye Issledovaniia",+"GeoJ. Geophysical Journal",+"GeoJI Geophysical Journal International",+"GeoK. Geodezja i Kartografia",+"Geokh Geokhimiia",+"Geolg Geologos",+"Geolo Geologija",+"Geoma Geomatik",+"GeoM. Geological Magazine",+"Geomo Geomorphology",+"GeoNr Geophysica Norvegica",+"GeoOD Geology of Ore Deposits",+"GeoPA Geofisica Pura e Applicata",+"Geop. Geophysics",+"Geoph Geophysica",+"GeopP Geophysical Prospecting",+"GeoRL Geophysical Research Letters",+"GeoRu Geologische Rundschau",+"GeoSb Geofizicheskii Sbornik",+"Geosc Geosciences",+"GeoSJ Geological Society Journal",+"GEOSN GEOS Note Circulaire",+"Geosp Geosphere",+"GeosR Geoscience Records",+"GeoSu Geophysical Surveys",+"Geote Geotectonics",+"Geot. Geotimes",+"Geoth Geothermics",+"GeoZh Geofizicheskii Zhurnal",+"Gerb. Gerbertvs, International Academic Publication on History of Medieval Science",+"GescJ Geosciences Journal",+"GGG.. Geochemistry, Geophysics, Geosystems",+"GGMit Gauss-Gesellschaft e.V. Gö",+"GGMM. Greenhouse Gas Measurement & Management",+"GID.. Geoscientific Instrumentation, Methods and Data Systems Discussions",+"Gidro Gidromekhanika",+"GI... Geoscientific Instrumentation, Methods and Data Systems",+"GiGi. Gidroprivod i Gidropnevmoavtomatika",+"GIPol Geoinformatica Polonica",+"GiSan Gigiena i Sanitariia",+"GKA.. Geodeziia i Kartografiia Aehrofotosemka, L'vov",+"GMDD. Geoscientific Model Development Discussions",+"GMD.. Geoscientific Model Development",+"GML.. Geo-Marine Letters",+"GMMWJ Gesellschaft angewandte Mathematik und Mechanik Jahrestagung Goettingen West Germany Zeitschrift Flugwissenschaften",+"GMS.. Washington DC American Geophysical Union Geophysical Monograph Series",+"GMuD. Gesellschaft Mathematik und Datenverarbeitung mbH Multigrid Methods Special Topics Applications",+"GOAM. Greenwich Observations in Astronomy, Magnetism and Meteorology made at the Royal Observatory, Series 3",+"GOAMM Greenwich Observations in Astronomy, Magnetism and Meteorology made at the Royal Observatory, Series 2",+"GondR Gondwana Research",+"GORO. Greenwich Observations made at the Royal Observatory",+"GPC.. Global and Planetary Change",+"GPSW. GPS World",+"GrAeH Grumman Aerospace Horizons",+"GrCo. Gravitation and Cosmology",+"GReGr General Relativity and Gravitation",+"GriO. Griffith Observer",+"gr.qc arXiv General Relativity and Quantum Cosmology e-prints",+"GrTOn Gravitatsiia i Teoriia Otnositelnosti",+"Grund Grundwasser",+"GSAB. Geological Society of America Bulletin",+"GSAMm Geological Society of America Memoir",+"GSASP Geological Society of America Special Papers",+"GSDJ. Geoscience Data Journal",+"GSEng GeoScience Engineering",+"GSL.. Geoscience Letters",+"GSLSP Geological Society of London Special Publications",+"GTES. Geothermal Energy Science",+"GTPZ. Gigiena Truda i Professionalnye Zabolevaniia",+"GUL.. Geschichte und Lichtwechsel der Veraenderlichen Sterne (Potsdam)",+"GVMK. Gibridnye Vychislitelnye Mashiny i Kompleksy",+"HAAG. Handbook of Astronomy Astrophysics and Geophysics",+"HadJ. Hadronic Journal",+"HadJS Hadronic Journal Supplement",+"HamS. Hamburger Sternwarte Sonderdrucke",+"HarAC Harvard College Observatory Announcement Card",+"HarCi Harvard College Observatory Circular",+"HarMo Harvard Observatory Monographs",+"HarOR Report of the Committee of the Overseers of Harvard College appointed to visit the Observatory",+"HarRe Harvard College Observatory Reprints",+"HARSB Histoire de l'Academie Royale des Sciences et des Belles-Lettres de Berlin",+"HarZi Harthaer Beobachtungs-Zirkular",+"HCHy. Hovering Craft and Hydrofoil",+"HDA.. Handbuch der Astrophysik",+"HDP.. Handbuch der Physik",+"HDSTS Herald of Dagestan State Technical University Technical Sciences",+"HeaPh Health Physics",+"Heavn Heavens",+"HEDP. High Energy Density Physics",+"HelOB Helwan Institute of Astronomy and Geophysics Bulletins",+"HelR. Observatory and Astrophysics Laboratory University of Helsinki Report",+"HemD. Hemel en Dampkring",+"hep.exarXiv High Energy Physics - Experiment e-prints",+"hep.laarXiv High Energy Physics - Lattice e-prints",+"HEPNP High Energy Physics and Nuclear Physics",+"hep.pharXiv High Energy Physics - Phenomenology e-prints",+"hep.tharXiv High Energy Physics - Theory e-prints",+"HESSD Hydrology and Earth System Sciences Discussions",+"HESS. Hydrology and Earth System Sciences",+"HFC.. Hydrogen and Fuel Cells",+"HGSS. History of Geo- and Space Sciences",+"HiA.. Highlights of Astronomy",+"HisSc History of Science",+"HiTec High Technology",+"HMR.. Helgoland Marine Research",+"HMT.. Heat and Mass Transfer",+"Holoc The Holocene",+"HPCRE Handbook on the Physics and Chemistry of Rare Earths",+"HPR.. High Pressure Research",+"HRL.. Hydrological Research Letters",+"HTemS High Temperature Science",+"HTHP. High Temperatures and High Pressures",+"HTJR. Heat Transfer Japanese Research",+"HTMP. High Temperature Materials and Processes",+"HTrEn Heat Transfer Engineering",+"HTSR. Heat Transfer Soviet Research",+"HUFEB Hokkaido University Faculty Engineering Bulletin",+"HUFEM Hokkaido University Faculty Engineering Memoirs",+"HvaOB Hvar Observatory Bulletin",+"HvOBS Hvar Observatory Bulletin Supplement",+"HWM.. Helgolä",+"HWP.. Horizons in World Physics",+"HyBio Hydrobiologia",+"HydJ. Hydrogeology Journal",+"HyInt Hyperfine Interactions",+"HyPr. Hydrological Processes",+"IA&A. Ingenieria Aeronautica y Astronautica",+"IadEn Iadernaia Energiia",+"IAESM IEEE Aerospace Electronic Systems Magazine",+"IAFET Instituto de Astronomia y Fisica del Espacio Buenos Aires",+"IAIss Istoriko-Astronomicheskie Issledovaniya",+"IAL1K Institut d'Astronomie de Lausanne",+"IAM.. International Applied Mechanics",+"IANT. International Advances in Nondestructive Testing",+"IAOIT Informo of the Astronomia-Optika Institucio, Universitato de Turku",+"IAPM. IEEE Antennas and Propagation Magazine",+"IAPPP International Amateur-Professional Photoelectric Photometry Communications",+"IASSP IEEE ASSP Magazine",+"IAUCB IAU Commission on Close Binary Stars",+"IAUC. International Astronomical Union Circular",+"IAUDS IAU Commission on Double Stars",+"IAUFM IAU Focus Meeting",+"IAUGA IAU General Assembly",+"IAUIB IAU Information Bulletin",+"IAUIn IAU Commission on Instruments",+"IAUSS IAU Special Session",+"IAUTA Transactions of the International Astronomical Union, Series A",+"IAUTB Transactions of the International Astronomical Union, Series B",+"IAWPL IEEE Antennas and Wireless Propagation Letters",+"IBCP. An International Journal at the Interface Between Chemistry and Physics",+"IBMJ. IBM Journal of Research and Development",+"IBSAE Sovetskaia Antarkticheskaia Ekspeditsiia Informatsionnyi Byulleten",+"IBSH. Informational Bulletin of the Southern Hemisphere",+"IBUAA Informational Bulletin of the Ukrainian Astronomical Association",+"IBVS. Information Bulletin on Variable Stars",+"ICAOB ICAO Bulletin",+"Icar. Icarus",+"ICGA. IEEE Computer Graphics Applications",+"ICHIN Newsletters of the Interdivisional Commission on History of the IAGA",+"ICHMT International Communications in Heat and Mass Transfer",+"ICiSM IEEE Circuits Systems Magazine",+"ICML. International Conference on Machine Learning",+"IComM IEEE Communications Magazine",+"ICQ.. International Comet Quarterly",+"ICSE. Impact of Computing in Science and Engineering",+"ICSEn IEEE Computational Science and Engineering",+"ICSM. IEEE Computer Systems Magazine",+"IDAQP Infinite Dimensional Analysis, Quantum Probability and Related Topics",+"IDTC. IEEE Design Test Computers",+"IEDL. IEEE Electron Device Letters",+"IEEEN IEEE Network",+"IEEEP IEEE Proceedings",+"IEEES IEEE Spectrum",+"IEEP. Institution of Electrical Engineers Proceedings",+"IEERv IEE Reviews",+"IEITC IEICE Transactions on Communications",+"IEITE IEICE Transactions on Electronics",+"IEITF IEICE Transactions on Fundamentals of Electronics Communications and Computer Sciences",+"IEITI IEICE Transactions on Information and Systems",+"IEREJ Institution of Electronic Radio Engineers Journal",+"IER.. Internationale Elektronische Rundschau",+"IESJ. IES Journal",+"IETE. Institution of Electronics Telecommunication Engineers",+"IET.. Instruments and Experimental Techniques",+"IEWS. Stevenage Herts England Peter Peregrinus Ltd IEE Electromagnetic Waves Series",+"IExp. IEEE Expert",+"IFBel Akademiia Nauk Belorusskoi SSR Institut Fiziki Nauchnaia Sessiia Minsk Belorussian SSR Zhurnal Prikladnoi Spektroskopii",+"IGAFS Issledovaniia Geomagnetizmu Aeronomii i Fizike Solntsa",+"IGRSL IEEE Geoscience and Remote Sensing Letters",+"IGRv. International Geology Review",+"IGS.. Orlando FL Academic Press Inc International Geophysics Series",+"IHERv Ishikawajima Harima Engineering Review",+"IHWN. IHW Newsletter",+"IIApN Indian Institute of Astrophysics Newsletter",+"IINA. Istituto Italiano di Navigazione Atti",+"IISys IEEE Intelligent Systems",+"IJAA. International Journal of Astronomy and Astrophysics",+"IJACS International Journal of Adaptive Control and Signal Processing",+"IJAdA International Journal of Adhesion Adhesives",+"IJAEM International Journal of Analytical and Experimental Modal Analysis",+"IJAEO International Journal of Applied Earth Observation and Geoinformation",+"IJA.. International Journal of Astronomy",+"IJAIS International Journal of Applied Information Systems",+"IJAME International Journal of Applied Mechanics and Engineering",+"IJAM. International Journal of Applied Mechanics",+"IJAP. IOSR Journal of Applied Physics",+"IJART International Journal of Advancements in Research &",+"IJAsB International Journal of Astrobiology",+"IJASE International Journal of Advanced Structural Engineering",+"IJASS International Journal of Aeronautical and Space Sciences",+"IJBB. International Journal of Bioclimatology Biometeorology",+"IJBC. International Journal of Bifurcation and Chaos",+"IJBm. International Journal of Biometeorology",+"IJCA. International Journal of Computer Applications",+"IJCAT International Journal of Computer Applications and Technology",+"IJCEM International Journal for Computational Methods in Engineering Science and Mechanics",+"IJCFD International Journal of Computational Fluid Dynamics",+"IJC.. International Journal of Control",+"IJCli International Journal of Climatology",+"IJCMB International Journal of Computer Mathematics Section B",+"IJCMS International Journal of Computational Materials Science and Engineering",+"IJDE. International Journal of Digital Earth",+"IJDM. International Journal of Damage Mechanics",+"IJEaS International Journal of Earth Sciences",+"IJEEP International Journal of Emerging Electric Power Systems",+"IJEFM International Journal of Engineering and Fluid Mechanics Spring",+"IJEG. International Journal of Engineering and Geosciences",+"IJE.. International Journal of Electronics",+"IJEnR International Journal of Environmental Research",+"IJERA International Journal of Enginnering Research and Applications",+"IJER. International Journal of Energy Research",+"IJES. International Journal of Engineering Science",+"IJESS IEEE Journal on Exploratory Solid-State Computational Devices and Circuits",+"IJEST IEEE Journal on Emerging and Selected Topics in Circuits and Systems",+"IJFa. International Journal of Fatigue",+"IJFD. International Journal of Fluid Dynamics",+"IJFE. International Journal of Fusion Energy",+"IJFr. International Journal of Fracture",+"IJGA. International Journal of Geomagnetism and Aeronomy",+"IJGeo International Journal of Geophysics",+"IJGI. ISPRS International Journal of Geo-Information",+"IJG.. International Journal of Geosciences",+"IJGMM International Journal of Geometric Methods in Modern Physics",+"IJGNP International Journal of Green Nanotechnology Physics and Chemistry",+"IJGS. International Journal of General Systems",+"IJHE. International Journal of Hydrogen Energy",+"IJHFF International Journal of Heat and Fluid Flow",+"IJHM. International Journal of Hybrid Microelectronics Fall",+"IJHMT International Journal of Heat and Mass Transfer",+"IJIDF International Journal of Image and Data Fusion",+"IJIE. International Journal of Impact Engineering",+"IJIMW International Journal of Infrared and Millimeter Waves",+"IJIST International Journal of Imaging Systems Technology",+"IJMES International Journal of Mathematical Education in Science and Technology",+"IJMF. International Journal of Multiphase Flow",+"IJMHG Indian Journal of Meteorology Hydrology and Geophysics",+"IJMIP International Journal of Mass Spectrometry and Ion Physics",+"IJMMC IEEE Journal on Multiscale and Multiphysics Computational Techniques",+"IJMMD International Journal of Mechanics and Materials in Design",+"IJMM. International Journal of Mini Microcomputers",+"IJMMM International Journal of Minerals, Metallurgy, and Materials",+"IJMoS International Journal of Modelling and Simulation",+"IJMPA International Journal of Modern Physics A",+"IJMPB International Journal of Modern Physics B",+"IJMPC International Journal of Modern Physics C",+"IJMPD International Journal of Modern Physics D",+"IJMPE International Journal of Modern Physics E",+"IJMQE International Journal of Metrology and Quality Engineering",+"IJMSE International Journal of Mars Science and Exploration",+"IJMSI International Journal of Mass Spectrometry and Ion Processes",+"IJMS. International Journal of Mechanical Sciences",+"IJMSp International Journal of Mass Spectrometry",+"IJMW. International Journal of Mine Water",+"IJNA. IMA Journal of Numerical Analysis",+"IJNAM International Journal for Numerical and Analytical Methods in Geomechanics",+"IJNAO International Journal of Naval Architecture and Ocean Engineering",+"IJN.. International Journal of Nanoscience",+"IJNLM International Journal of Non Linear Mechanics",+"IJNME International Journal for Numerical Methods in Engineering",+"IJNMF International Journal for Numerical Methods in Fluids",+"IJNS. International Journal of Neural Systems",+"IJNT. International Journal of Nanotechnology",+"IJOE. IEEE Journal of Oceanic Engineering",+"IJO.. International Journal of Optomechatronics",+"IJOpt International Journal of Optics",+"IJPAM Indian Journal of Pure and Applied Mathematics",+"IJPAP Indian Journal of Pure and Applied Physics",+"IJP.. International Journal of Plasticity",+"IJPRS International Journal of Photogrammetry and Remote Sensing",+"IJQC. International Journal of Quantum Chemistry",+"IJQE. IEEE Journal of Quantum Electronics",+"IJQI. International Journal of Quantum Information",+"IJRA. IEEE Journal of Robotics Automation",+"IJRAI International Journal of Radiation Applications and Instrumentation D Nuclear Tracks and Radiation Measurements",+"IJRFI IEEE Journal of Radio Frequency Identification",+"IJRPC International Journal for Radiation Physics and Chemistry",+"IJRR. International Journal of Robotics Research",+"IJRS. International Journal of Remote Sensing",+"IJRSP Indian Journal of Radio and Space Physics",+"IJSAC IEEE Journal on Selected Areas in Communications",+"IJScA International Journal of Supercomputer Applications",+"IJSC. International Journal of Satellite Communications",+"IJSEd International Journal of Science Education",+"IJSE. International Journal of Solar Energy",+"IJSMD International Journal for Simulation and Multidisciplinary Design Optimization",+"IJSME International Journal of Science and Mathematics Education",+"IJSNM International Journal of Smart and Nano Materials",+"IJSSC IEEE Journal of Solid-State Circuits",+"IJSS. International Journal of Solids and Structures",+"IJSTA IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing",+"IJSTQ IEEE Journal of Selected Topics in Quantum Electronics",+"IJSyS International Journal of Systems Science",+"IJTFM IEEJ Transactions on Fundamentals and Materials",+"IJTIA IEEJ Transactions on Industry Applications",+"IJT.. International Journal of Thermophysics",+"IJTJE International Journal of Turbo and Jet Engines",+"IJTPE IEEJ Transactions on Power and Energy",+"IJTP. International Journal of Theoretical Physics",+"IJTSM IEEJ Transactions on Sensors and Micromachines",+"ILCSM IEEE LCS Magazine",+"IllOB Bulletin of the Astronomical Observatory of the University of Illinois",+"ILOMP Publications of the International Latitude Observatory at Mizusawa",+"ILSJ. International Lunar Society Journal",+"ILTS. IEEE LTS",+"IMA.. Institute for Mathematics and Its Applications",+"IMeRv International Metals Reviews",+"IMGWL IEEE Microwave and Guided Wave Letters",+"IMMag IEEE Microwave Magazine",+"IMPA. Interscience Monographs in Physics and Astronomy",+"IMRv. International Materials Reviews",+"imsd.cIEEE MTT-S International Microwave Symposium Digest",+"InAgr International Agrophysics",+"InASP Indian Academy of Sciences Proceedings Section",+"INASR INASAN Science Reports",+"InCh. Inorganic Chemistry",+"InEPS Indian Academy of Sciences Proceedings: Earth and Planetary Sciences",+"InES. Indian Academy of Sciences Proceedings: Section C Engineering Sciences",+"InfCo Information Control",+"InfD. Information Display",+"InFiZ Inzhenerno Fizicheskii Zhurnal",+"InfPh Infrared Physics",+"InFuJ Institute Fuel Journal",+"IngAr Ingenieur Archiv",+"Ingeg Ingegneria",+"InGeo International Geophysics Series",+"INGN. The Newsletter of the Isaac Newton Group of Telescopes",+"InISA Indian Institute of Science Journal of Aeronautical Society of India",+"InISJ Indian Institute of Science Journal",+"InJAE Indian Journal of Aerospace Engineering Division",+"InJET Indian Journal of Electronics Telecommunication Engineering Division",+"InJHS Indian Journal of the History of Science",+"InJME Indian Journal of Mechanical Engineering Division",+"InJPA Indian Journal of Physics Section A",+"InJPB Indian Journal of Physics Section B",+"InJPh Indian Journal of Physics",+"InJP. Indian Journal of Physics and Proceedings of the Indian Assocatiation for the Cultivation of Science",+"InJTP Indian Journal of Theoretical Physics",+"INL.. International Nano Letters",+"InLoP Instytut Lotnictwa Prace",+"InMat Inventiones Mathematicae",+"InMPP Instytut Maszyn Przeplywowych Prace",+"InMS. Indian Academy of Sciences Proceedings Mathematical Sciences",+"InPhT Infrared Physics and Technology",+"INSAP Indian National Science Academy Proceedings Supplement",+"IntaC Inta Conie",+"Inter Interavia",+"INTMK Itogi Nauki i Tekhniki Seriia Meteorologiia i Klimatologiia",+"INTSA Itogi Nauki i Tekhniki Seriia Astronomiia",+"INTSF Itogi Nauki i Tekhniki Seriia Fizika Plazmy",+"INTSI Itogi Nauki i Tekhniki Seriia Issledovanie Kosmicheskogo Prostranstva",+"IntSM Interavia Space Markets",+"INTSO Itogi Nauki i Tekhniki Seriia Okeanologiia",+"INTSR Itogi Nauki i Tekhniki Seriia Radiotekhnika",+"INTSS Itogi Nauki i Tekhniki Seriia Sovremennye Problemy Matematiki",+"INTSV Itogi Nauki i Tekhniki Seriia Vozdushnyi Transport",+"InvPr Inverse Problems",+"IonIs Ionosfernye Issledovaniia",+"Iono. Ionosphere",+"IORAS Anuario publicado pelo Imperial Observatorio do Rio de Janeiro Suplemento",+"IPAUC INTERKOSMOS Prague Astronomicky Ustav Ceskoslovenske Akademie Ved",+"IPBS. Isotopes in the Physical and Biomedical Sciences",+"IPCDT IEE Proceedings E: Computers and Digital Techniques",+"IPCI. IEEE Press Series on Computational Intelligence",+"IPCRS IEE Proceedings F: Communications Radar and Signal Processing",+"IPCSV IEE Proceedings: Communications Speech and Vision",+"IPCTA IEE Proceedings D: Control Theory Applications",+"IPDMC IEEE Press Series on Digital &",+"IPElT IEEE Press Series on Electronics Technology",+"IPEPA IEE Proceedings B: Electric Power Applications",+"IPETS IEEE Power and Energy Technology Systems Journal",+"IPEWT IEEE Press Series on Electromagnetic Wave Theory",+"IPGTD IEE Proceedings C: Generation Transmission Distribution",+"IPhoJ IEEE Photonics Journal",+"IPMAP IEE Proceedings H: Microwaves Antennas and Propagation",+"IPM.. Information Processing and Management",+"IPMOA IEE Proceedings H: Microwaves Optics and Antennas",+"IPMS. IEEE Press Series on Microelectronic Systems",+"IPNPR Interplanetary Network Progress Report",+"IPOpt IEE Proceedings J: Optoelectronics",+"Ippa. Ipparchos",+"IPPE. IEEE Press Series on Power Engineering",+"IPPSM IEE Proceedings: Physical Science Measurement and Instrumentation Management and Education Reviews",+"IPRSP IEE Proceedings F: Radar and Signal Processing",+"IPSSE IEE Proceedings: Solid-State Electron Devices",+"IPTHS IEEE Press Telecommunications Handbook Series",+"IPTL. IEEE Photonics Technology Letters",+"IRA.. Infrared Astronomy",+"IrAJ. Irish Astronomical Journal",+"IrAJS Irish Astronomical Journal Supplement",+"IREdu International Review of Education",+"IRETE IRE Transactions on Education",+"IRH.. International Review of Hydrobiology",+"IrJST Iranian Journal of Science Technology",+"IRMBP Institut Royal Meteorologique de Belgique Publications Serie",+"IRNvP International Review of Nuclear Physics",+"IRPC. International Reviews in Physical Chemistry",+"ISAP. ISA Proceedings",+"ISASS Institute of Space and Astronautical Science Report",+"ISAT. ISA Transactions",+"ISBRv International Space Business Review",+"iSci. iScience",+"ISCJS ISRO Satellite Centre Journal of Spacecraft Technology",+"ISenJ IEEE Sensors Journal",+"Isis. Isis. Journal of the History of Science Society",+"IsJAP Istanbul University Faculty of Science Journal of Astronomy Physics",+"IsJT. Israel Journal of Technology",+"ISKZ. Issledovaniya Solntsa i Krasnykh Zvezd",+"IsMTD Issledovaniia Mekhanike i Teploobmenu Dvukhfaznykh Sred",+"ISNL. Information Systems Newsletter",+"ISPAn ISPRS Annals of Photogrammetry, Remote Sensing and Spatial Information Sciences",+"ISPAr ISPRS - International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences",+"ISPL. IEEE Signal Processing Letters",+"ISPM. IEEE Signal Processing Magazine",+"ISRAA ISRN Astronomy and Astrophysics",+"IsRvC Istanbul University Faculty Science Review Serie C",+"ISRv. Interdisciplinary Science Reviews",+"ISSIR ISSI Scientific Reports Series",+"IsSRT Israel Space Research and Technology Information Bulletin",+"IssUP Issledovaniia Uprugosti i Plastichnosti",+"IssZK Issledovanie Zemli Fiz Kosmosa",+"IS&T. Instrumentation Science &",+"IST.. Issues in Science and Technology",+"ISTSP IEEE Journal of Selected Topics in Signal Processing",+"ISysJ IEEE Systems Journal",+"ITAB. Institut Teoreticheskoi Astronomii Byulleten",+"ITABO Institute of Theoretical Astrophysics, Blindern-Oslo",+"ITAC. IEEE Transactions on Automatic Control",+"ITAer IEEE Transactions on Aerospace",+"ITAES IEEE Transactions on Aerospace Electronic Systems",+"ITANE IEEE Transactions on Aerospace and Navigational Electronics",+"ITAP. IEEE Transactions on Antennas and Propagation",+"ITAS. IEEE Transactions on Applied Superconductivity",+"ITASS IEEE Transactions on Acoustics Speech and Signal Processing",+"ITBE. IEEE Transactions on Biomedical Engineering",+"ITB.. IEEE Transactions on Broadcasting",+"ITCAD IEEE Transactions on Computer Aided Design",+"ITCHM IEEE Transactions on Components Hybrids and Manufacturing Technology",+"ITCJ. ITC Journal",+"ITCmp IEEE Transactions on Computers",+"ITCom IEEE Transactions on Communications",+"ITCS. IEEE Transactions on Circuits Systems",+"ITED. IEEE Transactions on Electron Devices",+"ITEdu IEEE Transactions on Education",+"ITEI. IEEE Transactions on Electrical Insulation",+"ITEIS IEEJ Transactions on Electronics, Information and Systems",+"ITElC IEEE Transactions on Electromagnetic Compatibility",+"ITEM. IEEE Transactions on Engineering Management",+"ITEnC IEEE Transactions on Energy Conversion",+"ITGE. IEEE Transactions on Geoscience Electronics",+"ITGRS IEEE Transactions on Geoscience and Remote Sensing",+"ITIA. IEEE Transactions on Industry Applications",+"ITIEC IEEE Transactions on Industrial Electronics and Control Instrumentation",+"ITIE. IEEE Transactions on Industrial Electronics",+"ITIM. IEEE Transactions on Instrumentation Measurement",+"ITIP. IEEE Transactions on Image Processing",+"ITIT. IEEE Transactions on Information Theory",+"ITJSE Indian Institute of Technology Journal on Section Engineering Technology",+"ITME. IEEE Transactions on Military Electronics",+"ITM.. IEEE Transactions on Magnetics",+"ITMTT IEEE Transactions on Microwave Theory Techniques",+"ITNan IEEE Transactions on Nanotechnology",+"ITN.. IERS Technical Note",+"ITNN. IEEE Transactions on Neural Networks",+"ITNS. IEEE Transactions on Nuclear Science",+"ITPA. Interscience Tracts on Physics and Astronomy",+"ITPAM IEEE Transactions on Pattern Analysis and Machine Intelligence",+"ITPAS IEEE Transactions on Power Apparatus Systems",+"ITPE. IEEE Transactions on Power Electronics",+"ITPHP IEEE Transactions on Parts Hybrids and Packaging",+"ITPS. IEEE Transactions on Plasma Science",+"ITPSy IEEE Transactions on Power Systems",+"ITRA. IEEE Transactions on Robotics Automation",+"ITRFI IEEE Transactions on Radio Frequency Interference",+"ITR.. IEEE Transactions on Reliability",+"ITSE. IEEE Transactions on Sustainable Energy",+"ITSET IEEE Transactions on Space Electronics and Telemetry",+"ITSMC IEEE Transactions on Systems Man and Cybernetics",+"ITSP. IEEE Transactions on Signal Processing",+"ITSU. IEEE Transactions on Sonics Ultrasonics",+"ITTST IEEE Transactions on Terahertz Science and Technology",+"ITUFF IEEE Transactions on Ultrasonics Ferroelectrics and Frequency Control",+"ITUTJ ITU Telecommunication Journal",+"ITVT. IEEE Transactions on Vehicular Technology",+"IUEEN IUE ESA Newsletter",+"IUENN IUE NASA Newsletter",+"IUGG. International Union of Geodesy and Geophysics General Assembly",+"IUMJ. Indiana University Mathematics Journal",+"IzAlm Izvestiya Astrofizicheskogo Instituta Alma-Ata",+"IzAOP Izvestiya Atmospheric and Oceanic Physics",+"IzArm Izvestiya Akademiya Nauk Armyanskoi",+"IzAsh Izvestiya Akademii Nauk Turkmenskoj SSR Ashkhabad",+"IzAvT Izvestiya VUZ Aviatsionnaya Tekhnika",+"IzAze Akademiia Nauk Azerbaidzhanskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh i Matematicheskikh Nauk",+"IzDus Dushanbe Izdatel Donish",+"IzEhn Izvestiya Astronomicheskoj Engel'gardt obskoj Observatorii Kazan",+"IzET. Izvestiia Energetika i Transport",+"IzFru Frunze Izdatel Ilim",+"IzFZ. Akademiia Nauk SSSR, Izvestiia, Fizika Zemli",+"IzGeo Tbilisi Georgian SSR Izdatel Metsniereba",+"IzGla Izvestiia Glavnoi rossiiskoi astronomicheskoi observatorii",+"IzKie Izvestiya Glavnoj Astronomicheskoj Observatorii Kiev",+"IzKry Izvestiya Ordena Trudovogo Krasnogo Znameni Krymskoj Astrofizicheskoj Observatorii",+"IzLat Akademiia Nauk Latviiskoi SSR Izvestiia Seriia Fizicheskikh i Tekhnicheskikh Nauk",+"IzLen Leningrad, Izdatel'stvo Nauka",+"IzMat Izvestiya: Mathematics",+"IzMin Minsk Izdatel BGU",+"IzMol Akademiia Nauk Moldavskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh i Matematicheskikh Nauk",+"IzMZG Akademiia Nauk SSSR Izvestiia Mekhanika Zhidkosti i Gaza",+"IzOde Odesskij Gosudarstvennyi Universitet im. I. I. Mechnikova Izvestiya Astronomicheskoj Observatorii",+"IzPSE Izvestiya Physics of the Solid Earth",+"IzPul Izvestiya Glavnoj Astronomicheskoj Observatorii v Pulkove",+"IzRad Izvestiya VUZ Radiofizika",+"IzSF. Izvestiia Akademii Nauk Seriya Fizicheskaya",+"IzSib Akademiia Nauk SSSR Sibirskoe Otdelenie Izvestiia",+"IzSSR Akademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",+"IzTad Izvestiia Akademiia Nauk TadzhSSR",+"IzTas Tashkent Izdatel Fan",+"IzTif Tiflis Izdatel Tbilisskogo Universiteta",+"IzTur Akademiia Nauk Turkmenskoi SSR Izvestiia Seriia Fiziko Tekhnicheskikh Khimicheskikh i Geologicheskikh Nauk",+"IzUkr Akademiia Nauk Ukrainian SSSR Izvestiia Seriia Fizicheskaia",+"IzUzb Akademiia Nauk Uzbekskoi SSR Izvestiia Seriia Fiziko Matematicheskikh Nauk",+"IzVF. Izvestiya Vysshikh Uchebnykh Zavedenij. Fizika",+"IzVGA Izvestiia vuzov. Geodeziia Aehrofotosemka",+"IzVil Vilnius Izdatel Mokslas",+"IzVUZ Izvestiia Vysshaia Uchebn. Zaved., Radiofizika",+"IzYak Vsesoiuznaia Konferentsiia Kosmicheskim Lucham Yakutsk USSR Akademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",+"IzYer Vsesoiuznaia Konferentsiia Kosmicheskim Lucham Yerevan Armenian SSR Aademiia Nauk SSSR Izvestiia Seriia Fizicheskaia",+"JAChS Journal of the American Chemical Society",+"JAco. Journal d'Acoustique",+"JACS. Journal of American Ceramic Society",+"JAdD. Journal of Advanced Dielectrics",+"JAD.. Journal of Astronomical Data",+"JAdR. Journal of Advanced Research",+"JAE.. Journal of Acoustic Emission",+"JAerE Journal of Aerospace Engineering",+"JAerP Journal of Aerospace Power",+"JAerS Journal of Aerosol Science",+"JAESc Journal of Asian Earth Sciences",+"JAESE Journal of Astronomy &",+"JAES. Journal of Audio Engineering Society",+"JAfES Journal of African Earth Sciences",+"JAF.. Journal des Astronomes Francais",+"JAGeo Journal of Applied Geodesy",+"JAGI. Journal of Artificial General Intelligence",+"JAG.. Journal of Applied Geophysics",+"JAHH. Journal of Astronomical History and Heritage",+"JAI.. Journal of Astronomical Instrumentation",+"JaIMJ Japan Institute of Metals Journal",+"JAir. Journal of Aircraft",+"JaJAG Japanese Journal of Astronomy and Geophysics",+"JaJAP Japanese Journal of Applied Physics",+"JAllC Journal of Alloys and Compounds",+"JALPO Journal of the Association of Lunar and Planetary Observers, the Strolling Astronomer",+"JAMDS Journal of Advanced Mechanical Design, Systems, and Manufacturing",+"JAMES Journal of Advances in Modeling Earth Systems",+"JAM.. Journal of Applied Mechanics",+"JAMOP Journal of Atomic, Molecular and Optical Physics",+"JAMS. Journal of the American Mathematical Society",+"JAMTP Journal of Applied Mechanics and Technical Physics",+"JAnSc Journal of the Astronautical Sciences",+"JApA. Journal of Astrophysics and Astronomy",+"JApAS Journal of Astrophysics and Astronomy Supplement",+"JApCr Journal of Applied Crystallography",+"JAPE. Journal of Applied Photographic Engineering",+"JApEl Journal of Applied Electrochemistry",+"JAPh. Journal of Applied Physiology",+"JAP.. Journal of Applied Physics",+"JApMa IMA Journal of Applied Mathematics",+"JApMC Journal of Applied Meteorology and Climatology",+"JApMe Journal of Applied Meteorology",+"JApMM Journal of Applied Mathematics and Mechanics",+"JApMw Journal of Applied Metalworking",+"JApSc Journal of Applied Sciences",+"JApSp Journal of Applied Spectroscopy",+"JArEn Journal of Arid Environments",+"JARS. Journal of Applied Remote Sensing",+"JASAC Japan Astronomical Study Association Circulars",+"JASCE Journal of the American Society of Civil Engineers",+"JASEg Journal of the Astronomical Society of Egypt",+"JASE. Journal of Applied Science and Engineering Section on Electrical Power and Information Systems",+"JAsGe NRIAG Journal of Astronomy and Geophysics",+"JASIS Journal of the American Society for Information Science and Technology",+"JASJa Journal of the Acoustical Society of Japan",+"JASMS Journal of The American Society for Mass Spectrometry",+"JAsPh Journal of Astronomy and Physics (Turkey)",+"JASSA Journal of the Astronomical Society of Southern Africa",+"JASS. Journal of Astronomy and Space Sciences",+"JAS.. The Journal of Agricultural Science",+"JASTP Journal of Atmospheric and Solar-Terrestrial Physics",+"JASV. Journal of the Astronomical Society of Victoria Melbourne",+"JASWA Journal of the Astronomical Society of Western Australia",+"JAtC. Journal of Atmospheric Chemistry",+"JATIS Journal of Astronomical Telescopes, Instruments, and Systems",+"JAtOT Journal of Atmospheric and Oceanic Technology",+"JATP. Journal of Atmospheric and Terrestrial Physics",+"JAtS. Journal of Atmospheric Sciences",+"JATSo Journal of the Antique Telescope Society",+"JAuGG Journal of Australian Geology and Geophysics",+"JAVSO Journal of the American Association of Variable Star Observers (JAAVSO)",+"JAWRA Journal of the American Water Resources Association",+"JBAA. Journal of the British Astronomical Association",+"JBall Journal of Ballistics",+"JBAS. Journal of the British Astronomical Society",+"JBASP Jodrell Bank Ann Ser Pt",+"JBH.. Journal of Big History",+"JBiom Journal of Biomechanics",+"JBiop Journal of Biophysics",+"JBIS. Journal of the British Interplanetary Society",+"JBO.. Journal of Biomedical Optics",+"JBR.. Journal of Breath Research",+"JCAMD Journal of Computer-Aided Molecular Design",+"JCAM. Journal of Climate and Applied Meteorology",+"JCAP. Journal of Cosmology and Astroparticle Physics",+"JChEd Journal of Chemical Education",+"JCh.. Journal of Chromatography",+"JChPh Journal of Chemical Physics",+"JChS. Journal of Chromatographic Science",+"JCHyd Journal of Contaminant Hydrology",+"JCIS. Journal of Colloid and Interface Science",+"JCli. Journal of Climate",+"JClim Journal of Climatology",+"JClP. Journal of Clinical Pharmacology",+"JClR. Journal of Climate Research",+"JCMD. Journal of Computer-Aided Materials Design",+"JCM.. Journal of Computational Mathematics",+"JCMSI SICE Journal of Control, Measurement, and System Integration",+"JCoAM Journal of Computational and Applied Mathematics",+"JCoCh Journal of Computational Chemistry",+"JCoMa Journal of Composite Materials",+"JCom. Journal of Communications",+"JComp Journal of Complexity",+"JComS Journal of Computational Science",+"JConP Journal of Contemporary Physics (Armenian Academy of Sciences)",+"JCoPh Journal of Computational Physics",+"JCoSc Journal of Colloid Science",+"JCos. Journal of Cosmology",+"JCP.. Journal de Chimie Physique",+"JCPX. Journal of Computational Physics: X",+"JCrGr Journal of Crystal Growth",+"JCSS. Journal of the Chinese Silicate Society",+"JCSTe Journal of College Science Teaching",+"JCST. Journal of Computational Science and Technology",+"JCTR. Journal of Composites and Technology Research",+"JDBM. Journal of Dynamic Behavior of Materials",+"JDDE. Journal of Dynamics and Differential Equations",+"JDE.. Journal of Differential Equations",+"JDGeo Journal of Differential Geometry",+"JDisT Journal of Display Technology",+"JDSO. Journal of Double Star Observations",+"JDST. Journal of Dispersion Science and Technology",+"JEAA. Journal of Electromagnetic Analysis and Application",+"JEAS. Journal of Engineering and Applied Sciences",+"JECE. Journal of Environmental Conservation Engineering",+"JECS. Journal of Electronic Circuits and Systems",+"JECTC Journal of Electronics Cooling and Thermal Control",+"JEEEA Journal of Electrical and Electronics Engineering Australia",+"JEE.. Journal of Electrical Engineering",+"JEEM. Journal of Environmental and Economics Management",+"JEER. Journal of Engineering Education Research",+"JEET. Journal of Electrical Engineering &",+"JEI.. Journal of Electronic Imaging",+"JElas Journal of Elasticity",+"JElCo Electronics Communications of Japan",+"JElEn Electrical Engineering of Japan",+"JElS. Journal of the Electrochemical Society",+"JEMat Journal of Electronic Materials",+"JEMT. Journal of Electron Microscopy Technique",+"JENan Journal of Experimental Nanoscience",+"JEner Journal of Energy",+"JEngM Journal of Engineering and Mechanics",+"JEngS Journal of Engineering Sciences",+"JEnMa Journal of Engineering Mathematics",+"JEnM. Journal of Energetic Materials",+"JenRu Jenaer Rundschau",+"JenRv Jena Review",+"JEnvS Journal of Environmental Sciences",+"JEOS. Journal of the European Optical Society",+"JEP.. Journal of Engineering Physics",+"JEPT. Journal of Engineering Physics and Thermophysics",+"JEPub Journal of Electronic Publishing",+"JESEd Journal of Elementary Science Education",+"JESRP Journal of Electron Spectroscopy and Related Phenomena",+"JESS. Journal of Earth System Science",+"JETAI Journal of Experimental & Theoretical Artificial Intelligence",+"JETh. Journal of Engineering and Thermophysics",+"JETPL Soviet Journal of Experimental and Theoretical Physics Letters",+"JETP. Soviet Journal of Experimental and Theoretical Physics",+"JEWA. Journal of Electromagnetic Waves and Applications",+"JFAA. Journal of Fourier Analysis and Applications",+"JFC.. Journal of Fluid Control",+"JFF.. Journal of Fire Flammability",+"JFM.. Journal of Fluid Mechanics",+"JFS.. Journal of Fluids and Structures",+"JFST. Journal of Fluid Science and Technology",+"JFuA. Journal of Functional Analysis",+"JFuE. Journal of Funsion Energy",+"JGCD. Journal of Guidance Control Dynamics",+"JGeEd Journal of Geoscience Education",+"JGE.. Journal of Geophysics and Engineering",+"JGeod Journal of Geodesy",+"JGeoE Journal of Geological Education",+"JGeo. Journal of Geodynamics",+"JGeop Journal of Geophysics",+"JGeoS Journal of Geodetic Science",+"JGG.. Journal of Geomagnetism and Geoelectricity",+"JGGS. Journal of Geomagnetism and Geoelectricity Supplement",+"JGHyd Journal of Groundwater Hydrology",+"JGIS. Journal of Geographic Information System",+"JG... Journal of Geology",+"JGlac Journal of Glaciology",+"JGP.. Journal of Geometry and Physics",+"JGRA. Journal of Geophysical Research (Space Physics)",+"JGRB. Journal of Geophysical Research (Solid Earth)",+"JGRC. Journal of Geophysical Research (Oceans)",+"JGRD. Journal of Geophysical Research (Atmospheres)",+"JGRE. Journal of Geophysical Research (Planets)",+"JGRF. Journal of Geophysical Research (Earth Surface)",+"JGRG. Journal of Geophysical Research (Biogeosciences)",+"JGR.. Journal of Geophysical Research",+"JGrPh Journal of Gravitational Physics",+"JGRS. Journal of Geophysical Research Supplement",+"JGSJ. Journal of the Geodetic Society of Japan",+"JGS.. Journal of Geographical Systems",+"JGSoc Journal of the Geological Society",+"JGuC. Journal of Guidance Control",+"JGZG. Journal of Geophysics Zeitschrift Geophysik",+"JHA.. Journal for the History of Astronomy",+"JHAS. Journal for the History of Astronomy Supplement",+"JHATD Johns Hopkins APL Technical Digest",+"JHEAp Journal of High Energy Astrophysics",+"JHENP Journal of High Energy and Nuclear Physics",+"JHEP. Journal of High Energy Physics",+"JHTS. Journal of High Temperature Society",+"JHyd. Journal of Hydrology",+"JHyDy Journal of Hydrodynamics",+"JHyMe Journal of Hydrometeorology",+"JHyn. Journal of Hydronautics",+"JIECE Institute of Electronics Communication Engineers of Japan Transactions Section E English",+"JIEEJ Journal of The Institute of Electrical Engineers of Japan",+"JIEIA Journal of The Institution of Engineers (India): Series A",+"JIEIB Journal of The Institution of Engineers (India): Series B",+"JIEIC Journal of The Institution of Engineers (India): Series C",+"JIEID Journal of The Institution of Engineers (India): Series D",+"JIEIE Journal of The Institution of Engineers (India): Series E",+"JIEI. Journal of Industrial Engineering International",+"JIEq. Journal of Integral Equations",+"JIETE Journal of the Institution of Electronics and Telecommunication Engineers",+"JIEx. Journal of Ion Exchange",+"JIMIA Journal of the Institute of Mathematics and Its Applications",+"JIMO. WGN, Journal of the International Meteor Organization",+"JIMSS Journal of Intelligent Material Systems and Structures",+"JIMW. Journal of Infrared and Millimeter Waves",+"JInfo Journal of Informetrics",+"JInst Journal of Instrumentation",+"JIntS Journal of Integer Sequences",+"JIPM. Journal of Information Processing and Management",+"JIPNT Journal of the Institute of Positioning, Navigation and Timing of Japan",+"JIST. Journal of Imaging Science and Technology",+"JJAEE Journal of Japan Association for Earthquake Engineering",+"JJAHS Journal of Japanese Association of Hydrological Sciences",+"JJAPL Japanese Journal of Applied Physics Letters B",+"JJAPR Japanese Journal of Applied Physics Regular Papers Short Notes and Review Papers",+"JJAPS Japanese Journal of Applied Physics Supplement",+"JJSEE Journal of Japanese Society for Engineering Education",+"JJSMS Journal of the Japan Society for Marine Surveys and Technology",+"JJTST Journal of Thermal Science and Technology",+"JKAS. Journal of Korean Astronomical Society",+"JKASS Journal of Korean Astronomical Society Supplement",+"JKPS. Journal of Korean Physical Society",+"JKSAS Journal of the Korean Society for Aeronautical & Space Sciences",+"JLasA Journal of Laser Applications",+"JLCM. Journal of Less Common Metals",+"JLMS. Journal of the London Mathematical Society",+"JLTP. Journal of Low Temperature Physics",+"JLum. Journal of Luminescence",+"JLVEn Journal of Light & Visual Environment",+"JLwT. Journal of Lightwave Technology",+"JMAA. Journal of Mathematical Analysis and Applications",+"JMaCh Journal of Mathematical Chemistry",+"JMagR Journal of Magnetic Resonance",+"JMaMe Journal of Mathematics and Mechanics",+"JMaPh Journal of Mathematics and Physics",+"JMarA Journal of Maritime Archaeology",+"JMaSc Journal of Mathematical Sciences",+"JMatR Journal of Materials Research",+"JMatS Journal of Materials Science",+"JMBM. Journal of the Mechanical Behavior of Materials",+"JMCS. Journal of Mathematical and Computational Science",+"JMecA Journal de Mecanique Appliquee",+"JMecE Journal of Mechanical and Engineering Science",+"JMec. Journal de Mecanique",+"JMecT Journal de Mecanique Theorique et Appliquee",+"JMEM. Journal of Molecular and Engineering Materials",+"JMemS Journal of Microelectromechanical Systems",+"JMeOp Jemna Mechanika Optika",+"JMEP. Journal of Materials Engineering and Performance",+"JMetG Journal of Metamorphic Geology",+"JMet. Journal of Metals",+"JMetR Journal of Meteorological Research",+"JMFM. Journal of Mathematical Fluid Mechanics",+"JMic. Journal of Microscopy",+"JMicP Journal of Micropaleontology",+"JMiMi Journal of Micromechanics and Microengineering",+"JMMM. Journal of Magnetism and Magnetic Materials",+"JMM&M Journal of Micro/Nanolithography, MEMS, and MOEMS",+"JMMPS Japanese Magazine of Mineralogical and Petrological Sciences",+"JMOA. IEE Journal of Microwaves Optics and Acoustics",+"JMoEl Journal of Molecular Electronics",+"JMolE Journal of Molecular Evolution",+"JMOp. Journal of Modern Optics",+"JMoSp Journal of Molecular Spectroscopy",+"JMoSt Journal of Molecular Structure",+"JMPeS Journal of Mineralogical and Petrological Sciences",+"JMPh. Journal of Modern Physics",+"JMP.. Journal of Mathematical Physics",+"JMPMS Journal of Materials Processing and Manufacturing Science",+"JMPS. Journal of Mathematical and Physical Sciences",+"JMPSo Journal of Mechanics Physics of Solids",+"JMRB. Journal of Magnetic Resonance",+"JMR.. Journal of Marine Research",+"JMSA. Journal of Marine Science and Application",+"JMSB. Journal of Macromolecular Science, Part B",+"JMSJ. Journal of the Mineralogical Society of Japan",+"JMS.. Journal of Marine Systems",+"JMSL. Journal of Materials Science Letters",+"JMSME Journal of Materials Science and Materials Electronics",+"JMSp. Journal of Mass Spectrometry",+"JMSTL Journal of Mechanical Systems for Transportation and Logistics",+"JMTAS Journal de Mecanique Theorique et Appliquee Supplement",+"JMTPR Journal of Modern Trends in Physics Research",+"JMuMo Journal of Multiscale Modelling",+"JNano Journal of Nanophotonics",+"JNanU Journal Nanjing Univ",+"JNav. Journal of Navigation",+"JNCS. Journal of Non Crystalline Solids",+"JNCSX Journal of Non Crystalline Solids: X",+"JNE.. Journal of Nondestructive Evaluation",+"JNEng Journal of Neural Engineering",+"JNET. Journal of Non Equilibrium Thermodynamics",+"JNeur Journal of Neurochemistry",+"JNIRE Journal NIRE",+"JNIS. Journal of Near Infrared Spectroscopy",+"JNLM. Journal of Non Linear Mechanics",+"JNMP. Journal of Nonlinear Mathematical Physics",+"JNOPM Journal of Nonlinear Optical Physics and Materials",+"JNR.. Journal of Nanoparticle Research",+"JNS.. Journal of NonLinear Science",+"JNuE. Journal of Nuclear Energy",+"JNuM. Journal of Nuclear Materials",+"JNUNS Journal of Nanjing University (Natural Sciences)",+"JOA.. Journal for Occultation Astronomy",+"JoBaA Jodrell Bank Annals",+"JOC.. Journal of Optical Communications",+"JOCN. Journal of Optical Communications and Networking",+"JoDI. Journal of Digital Information",+"JO... Journal des Observateurs",+"JOL.. Journal of Oceanology and Limnology",+"JOM.. JOM - Journal of the Minerals, Metals and Materials Society",+"JON.. Journal of Optical Networking",+"JOptA Journal of Optics A: Pure and Applied Optics",+"JOptB Journal of Optics B: Quantum and Semiclassical Optics",+"JOpt. Journal of Optics",+"JOptT Journal of Optical Technology",+"JORS. Journal of Open Research Software",+"JOSAA Journal of the Optical Society of America A",+"JOSAB Journal of the Optical Society of America B Optical Physics",+"JOSA. Journal of the Optical Society of America (1917-1983)",+"JOSS. The Journal of Open Source Software",+"JOTA. Journal of Optimization Theory Applications",+"JOUC. Journal of Ocean University of China",+"JPalA Journal of Paleolithic Archaeology",+"JPalg Journal of Palaeogeography",+"JPal. Journal of Paleontology",+"JPall Journal of Palaeolimnology",+"JPApS Journal of Pure Applied Sciences",+"JPAS. Journal of Practical Applications in Space",+"JPCA. Journal of Physical Chemistry A",+"JPCB. Journal of Physical Chemistry B",+"JPCM. Journal of Physics Condensed Matter",+"JPCRD Journal of Physical and Chemical Reference Data",+"JPCS. Journal of Physics and Chemistry of Solids",+"JPDC. Journal of Parallel and Distributed Computing",+"JPE.. Journal of Physics of the Earth",+"JPEle Journal of Power Electronics",+"JPEn. Journal of Physics: Energy",+"JPES. Journal of Power and Energy Systems",+"JPetG Journal of Petroleum Geology",+"JPet. Journal of Petrology",+"JPFR. Journal of Plasma and Fusion Research",+"JPhA. Journal of Physics A Mathematical General",+"JPhB. Journal of Physics B Atomic Molecular Physics",+"JPhCh Journal of Physical Chemistry",+"JPhC. Journal of Physics C Solid State Physics",+"JPhCo Journal of Physics Communications",+"JPhD. Journal of Physics D Applied Physics",+"JPhE. Journal of Physics E Scientific Instruments",+"JPhEn Journal of Photonics for Energy",+"JPhF. Journal of Physics F Metal Physics",+"JPhG. Journal of Physics G Nuclear Physics",+"JPhGS Journal of Physics G Nuclear Physics Supplement",+"JPhM. Journal of Physics: Materials",+"JPhP. Journal of Physics: Photonics",+"JPhSt Journal of Physical Studies",+"JPhSu Supplement au Journal de Physique",+"JPhTA Journal de Physique Theorique et Apliquee",+"JPhy1 Journal de Physique I",+"JPhy2 Journal de Physique II",+"JPhy3 Journal de Physique III",+"JPhy4 Journal de Physique IV",+"JPhyC Journal de Physique Colloque",+"JPhys Journal de Physique",+"JPlPh Journal of Plasma Physics",+"JPLSP Jet Propulsion Lab. Space Programs Summary",+"JPO.. Journal of Physical Oceanography",+"JPoSA Journal of Polymer Science A Polymer Chemistry",+"JPoSB Journal of Polymer Science B Polymer Physics",+"JPoSc Journal of Polymer Science",+"JPoSL Journal of Polymer Science: Polymer Letters Edition",+"JPP.. Journal of Propulsion and Power",+"JPRG. Journal of Photogrammetry, Remote Sensing and Geoinformation Science",+"JPRS. ISPRS Journal of Photogrammetry and Remote Sensing",+"JPSCP JPS Conference Proceedings",+"JPSJ. Journal of the Physical Society of Japan",+"JPS.. Journal of Power Sources",+"JPSJS Journal of the Physical Society of Japan Supplement",+"JPT.. Journal of Propulsion Technology",+"JQS.. Journal of Quaternary Science",+"JQSRT Journal of Quantitative Spectroscopy and Radiative Transfer",+"JQT.. Journal of Quality Technology",+"JRAC. Journal of Radioanalytical Chemistry",+"JRadR Journal of Radiation Research",+"JRAEO Journal and Review of Astronomy Education and Outreach",+"JRAM. Journal fur die reine und angewandte Mathematik",+"JRASA Journal of the Royal Aeronautical Society of London",+"JRASC Journal of the Royal Astronomical Society of Canada",+"JReAt Journal de Recherches Atmospheriques",+"JRE.. Jahrbuch der Radioaktivitä",+"JResB Journal of Research Section B Mathematical Sciences B",+"JRes. Journal of Research",+"JRheo Journal of Rheology",+"JRIST Journal of Research Institute of Science and Technology, College of Science and Technology, Nihon University",+"JRNBA Journal of Research of the National Bureau of Standards A Physica and Chemsitry",+"JRNBB Journal of Research of the National Bureau of Standards B Mathematical Sciences",+"JRNBS Journal of Research of the National Bureau of Standards",+"JRNC. Journal of Radioanalytical and Nuclear Chemistry",+"JRoS. Journal of Robotic Systems",+"JRPC. Journal of Reinforced Plastics and Composites",+"JRPhy Journal of Research in Physics",+"JRP.. Journal of Radiological Protection",+"JRScT Journal of Research in Science Teaching",+"JRSp. Journal of Raman Spectroscopy",+"JSAES Journal of South American Earth Sciences",+"JSAPJ Japan Society of Air Pollution Journal",+"JSARA Journal of the Southeastern Association for Research in Astronomy",+"JSAR. Journal of Space Astronomy Research",+"JSASS Japan Society of Aeronautical Space Sciences",+"JSAST Japan Society of Aeronautical Space Sciences Transactions",+"JSCAI Journal of Japan Society of Civil Engineers, Ser. D1 (Architecture of Infrastructure and Environment)",+"JSCAM Journal of Japan Society of Civil Engineers, Ser. A2 (Applied Mechanics (AM))",+"JSCCE Journal of Japan Society of Civil Engineers, Ser. F3 (Civil Engineering Informatics)",+"JSCCM Journal of Japan Society of Civil Engineers, Ser. F4 (Construction and Management)",+"JSCER Journal of Japan Society of Civil Engineers, Ser. G (Environmental Research)",+"JSCGE Journal of Japan Society of Civil Engineers, Ser. C (Geosphere Engineering)",+"JSCHE Journal of Japan Society of Civil Engineers, Ser. B1 (Hydraulic Engineering)",+"JSCHS Journal of Japan Society of Civil Engineers, Ser. D2 (Historical Studies in Civil Engineering)",+"JScI. Journal of Scientific Instruments",+"JSCIP Journal of Japan Society of Civil Engineers, Ser. D3 (Infrastructure Planning and Management)",+"JSCMC Journal of Japan Society of Civil Engineers, Ser. E2 (Materials and Concrete Structures)",+"JSCMJ Japan Society of Composite Materials Journal",+"JSCom Journal of Scientific Computing",+"JSCPE Journal of Japan Society of Civil Engineers, Ser. E1 (Pavement Engineering)",+"JSCPP Journal of Japan Society of Civil Engineers, Ser. F5 (Professional Practices in Civil Engineering)",+"JSCSE Journal of Japan Society of Civil Engineers, Ser. A1 (Structural Engineering &",+"JSCSP Journal of Japan Society of Civil Engineers, Ser. F6 (Safety Problem)",+"JSCTE Journal of Japan Society of Civil Engineers, Ser. F1 (Tunnel Engineering)",+"JSCUS Journal of Japan Society of Civil Engineers, Ser. F2 (Underground Space Research)",+"JSDD. Journal of System Design and Dynamics",+"JSD.. Journal of the Structural Division, American Society of Civil Engineers",+"JSedR Journal of Sedimentary Research",+"JSEdT Journal of Science Education and Technology",+"JSeis Journal of Seismology",+"JSemi Journal of Semiconductors",+"JSER. Journal for STEM Education Research",+"JSGeo Journal of Series Geophysics",+"JSG.. Journal of Structural Geology",+"JShR. Journal of Ship Research",+"JSLEJ Japan Society of Lubrication Engineers Journal",+"JSLR. Journal of Soviet Laser Research",+"JSMAJ JASMA Japan Society of Microgravity Application Journal",+"JSMEA JSME International Journal Series A",+"JSMEB JSME International Journal Series B",+"JSMEC JSME International Journal Series C",+"JSMEJ JSME International Journal",+"JSMET JSME Transactions",+"JSM.. Journal of Structural Mechanics",+"JSMME Journal of Solid Mechanics and Materials Engineering",+"JSMSJ Japan Society of Materials Science Journal",+"JSMTE Journal of Statistical Mechanics: Theory and Experiment",+"JSpEn Journal of Space Engineering",+"JSP.. Journal of Statistical Physics",+"JSpRo Journal of Spacecraft and Rockets",+"JSPS. Japan Society of Promotion Science",+"JSPST Journal of The Society of Photographic Science and Technology of Japan",+"JSpT. Journal of Spacecraft Technology",+"JSR.. Journal of Sea Research",+"JSRP. Journal of the Society for Radiological Protection",+"JSSat Journal of Small Satellites",+"JSSCh Journal of Solid State Chemistry France",+"JSSED IEE Journal of Solid-State Electron Devices",+"JStA. Journal of Strain Analysis and Engineering Design",+"JSTEd Journal of Science Teacher Education",+"JSup. Journal of Superconductivity",+"JSV.. Journal of Sound Vibration",+"JSWSC Journal of Space Weather and Space Climate",+"JSymC Journal of Symbolic Computation",+"JTAM. Journal of Theoretical and Applied Mechanics",+"JTAP. Journal of Theoretical and Applied Physics",+"JTCN. Journal of Computatational and Theoretical Nanoscience",+"JTech Journal of Technology",+"JTeEv Journal of Testing Evaluation",+"JTePh Journal of Technical Physics",+"JTF.. Journal of Time and Frequency",+"JThCM Journal of Thermoplastic Composite Materials",+"JTh.. Journal of Thermodynamics",+"JThSc Journal of Thermal Science",+"JThSt Journal of Thermal Stresses",+"JTHT. Journal of Thermophysics and Heat Transfer",+"JTP.. Journal for Technology of Plasticity",+"JTST. Journal of Thermal Spray Technology",+"JTurb Journal of Turbulence",+"JURP. Journal of Undergraduate Reports in Physics",+"JVCIR Journal of Visual Communication and Image Representation",+"JVE.. Journal of Vibration Engineering",+"JVGR. Journal of Volcanology and Geothermal Research",+"JVSJ. Journal of the Vacuum Society of Japan",+"JVSTA Journal of Vacuum Science Technology A: Vacuum Surfaces and Films",+"JVSTB Journal of Vacuum Science Technology B: Microelectronics and Nanometer Structures",+"JVST. Journal of Vacuum Science Technology",+"JWMSE Journal of Women and Minorities in Science and Engineering",+"JWUDF Jahns Wö",+"JXST. Journal of X-Ray Science and Technology",+"KazOB Astronomicheskoj Observatorii Kazan Byulleten",+"KEIJ. Kansei Engineering International Journal",+"KernR Kernforschungsanlage Rept Res Results Solid State Nucl Phys",+"KexT. Kexue Tongbao",+"KFNT. Kinematika i Fizika Nebesnykh Tel",+"KFNTS Kinematika i Fizika Nebesnykh Tel Supplement",+"Khago Khagol",+"KharI Kharkov Izdanie IRE AN USSR",+"KhPl. Khimiia Plazmy",+"KiIND Kiev Izdatel Naukova Dumka",+"KiInF Kiev Institut Fiziki AN USSR",+"KiInM Kiev Institut Matematiki AN USSR",+"KiIzT Kiev Izdatel Tekhnika",+"KIMMJ Korean Institute of Metals and Materials Journal",+"KIMS. Knowledge: An Illustrated Magazine of Science",+"KIPME Kiev Institut Problem Modelirovaniia Energetike AN USSR",+"KIzIM Kiev Izdanie Instituta Matematiki AN USSR",+"KIzKU Kazan Izdatel Kazanskogo Universiteta",+"KIzS. Kishinev Izdatel Shtiintsa",+"KIzVS Kiev Izdatel Vishcha Shkola",+"KKR.. Kagaku Kogaku Ronbunshu",+"KlBer Kleinheubacher Berichte",+"KNAB. Koninklijke Nederlandse Akademie van Wetenschappen Proceedings Series B Physical Sciences",+"KNT.. Kosmicheskaia Nauka i Tekhnika",+"KodOB Kodaikanal Observatory Bulletins",+"KodRe Kodaikanal Observatory Reprints",+"KomMe Komety i Meteory",+"KomTs Kometnyj Tsirkulyar",+"KosIs Kosmicheskie Issledovaniia",+"KosIU Kosmicheskie Issledovaniia Ukraine",+"KosLu Kosmicheskie Luchi",+"KosNT Kosmichna Nauka i Tekhnologiya",+"KosRo Kosmicke Rozhledy",+"Kozmo Kozmos",+"KPCB. Kinematics and Physics of Celestial Bodies",+"KPCBS Kinematics and Physics of Celestial Bodies, Supplement",+"KPNON Kitt Peak National Observatory Newsletter",+"KSVH. Kungl. Svenska Vetenskapsakademiens Handlingar",+"KTTM. Khimiia i Tekhnologiia Topliv i Masel",+"KUFEM Kyushu University Faculty Engineering Memoirs",+"KvanE Kvantovaia Elektronika Moscow",+"KVeBB Kleine Veroeffentlichungen der Universitaetssternwarte zu Berlin Babelsberg",+"KVnT. Kibernetika i Vychislitelnaia Tekhnika",+"KyITB Kyushu Institute Technology Bulletin",+"KyoMe Kyoto University Faculty Engineering Memoirs",+"KyUAM Kyushu University Research Institute Applied Mechanics Reports",+"KyUSR Kyushu University Research Institute Industrial Science Reports",+"KyUTR Kyushu University Technology Reports",+"KzSib Akademiia Nauk SSSR Sibirskoi Otdelenie Izvestiia Seriia Tekhnicheskikh Nauk",+"LaEO. Laser Elektro Optik",+"LAES. Letters in Applied and Engineering Sciences",+"LaFoc Laser Focus",+"LaJ.. Lapidary Journal",+"LanB. Landolt Bö",+"Langm Langmuir",+"Lapa. Majalah LAPAN",+"LaPhL Laser Physics Letters",+"LaPhy Laser Physics",+"LasJ. Laser Journal",+"LAstr L'Astronomie",+"LatJP Latvian Journal of Physics and Technical Sciences",+"LatME Latviiskii Matematicheskii Ezhegodnik",+"LawOB Laws Observatory Bulletin, University of Missouri",+"LBLRR LBL Research Review",+"LCEC. Luxembourg Commission European Communities",+"LeBAN Leningrad Biblioteka Akademii Nauk SSSR",+"LeEne Leningrad Energoizdat",+"LeGid Leningrad Gidrometeoizdat",+"LeIzE Leningrad Izdatel Energiia",+"LeIzG Leningrad Izdatel Gidrometeoizdat",+"LeIzK Leningrad Izdatel Khimiia",+"LeIzM Leningrad Izdatel Mashinostroenie",+"LeIzN Leningrad Izdatel Nauka",+"LeIzS Leningrad Izdatel Sudostroenie",+"LeIzU Leningrad Izdatel Leningradskogo Universiteta",+"LeLen Leningrad Lenizdat",+"LePub Learned Publishing",+"LeRad Le Radium",+"LERec L'Echo des Recherches",+"LFR.. Lietuvos Fizikos Rinkinys",+"LFTR. LEST Foundation, Technical Report",+"LGUPM Leningradskii Gosudarstvennyi Universitet Problemy Matematicheskoi Fiziki",+"LHBl. La Houille Blanche",+"LHMT. Letters Heat Mass Transfer",+"LicOB Lick Observatory Bulletin",+"LiCr. Liquid Crystals",+"Life. Life",+"LimOc Limnology and Oceanography",+"Litho Lithos",+"LitJP Lithuanian Journal of Physics and Technical Sciences",+"LIVS. Lvov Izdatel Vishcha Shkola",+"LIzNe Leningrad Izdatel Nedra",+"LLabJ Lincoln Laboratory Journal",+"LMaPh Letters in Mathematical Physics",+"LMMP. Lasers in Manufacturing and Materials Processing",+"LNCS. Lecture Notes in Computer Science",+"LNEA. Lecture Notes and Essays in Astrophysics",+"LNEn. Lecture Notes in Engineering, Berlin Springer Verlag",+"LNES. Lecture Notes in Earth Sciences, Berlin Springer Verlag",+"LNM.. Lecture Notes in Mathematics, Berlin Springer Verlag",+"LNP.. Lecture Notes in Physics, Berlin Springer Verlag",+"LNSP. Lecture Notes and Supplements in Physics",+"LockH Lockheed Horizons",+"LOEle L'Onde Electrique",+"LowOB Lowell Observatory Bulletin",+"LPB.. Laser and Particle Beams",+"LPIBu LPI Bulletin",+"LPICo LPI Contributions",+"LPlaC Observatorio Astronomico de La Plata Circular",+"LPlaS Observatorio Astronomico de La Plata Separata Astronomica",+"LPRv. Laser & Photonics Review",+"LPSC. Lunar and Planetary Science Conference Proceedings",+"LRCA. Living Reviews in Computational Astrophysics",+"LR... Luft und Raumfahrt",+"LRR.. Living Reviews in Relativity",+"LRSP. Living Reviews in Solar Physics",+"LSA.. Light: Science & Applications",+"LS... Hamburger Sternw. Warner & Swasey Obs.",+"Lsphe Lithoshere",+"LSSR. Life Sciences and Space Research",+"LTerm La Termotecnica",+"LTP.. Low Temperature Physics",+"LubEn Lubrication Engineering",+"LunOC Lund Observatory Circular",+"LuRaQ Luft und Raumfahrt Quarter",+"LvoTs L'vovskij Ordena Lenina Gosudarstvennyj Universitet Tsirkulyar",+"MAA.. Mediterranean Archaeology and Archaeometry",+"MaCom Mathematics of Computation",+"MaDes Machine Design",+"MadOb Madras Observatory Observations",+"MadOO Madras Observatory Astronomical Observations",+"MaFiz Matematicheskaia Fizika",+"MagFE Magnetic Fusion Energy",+"MagGi Magnitnaia Gidrodinamika",+"MagIs Magnitosfernye Issledovaniia",+"MaHT. Materials at High Temperatures",+"MaMeA Sankt Peterburgskii Universitet Vestnik Seriia Matematika Mekhanika Astronomiia",+"MAMMP Mechanics of Advanced Materials and Modern Processes",+"MaMol Macromolecules",+"ManGe Manuscripta Geodaetica",+"ManRv Manufacturing Review",+"MApAn Methods and Applications of Analysis",+"MaPEJ Mathematical Physics Electronic Journal",+"MApFl Methods and Applications in Fluorescence",+"MaPhS Mathematical Physics Studies",+"MAP.. Meteorology and Atmospheric Physics",+"MaPr. Mathematical Proceedings",+"MAPSE Mission Analysis Program Solar Electric Propulsion MAPSEP",+"MaRBu Materials Research Bulletin",+"MarEc Marine Ecology",+"MarGe Marine Geodesy",+"MarGR Marine Geophysical Research",+"MarMP Marine Micropaleontology",+"MarPG Marine and Petroleum Geology",+"MarRv Marconi Review",+"Mashi Mashinostroenie",+"MatAn Mathematische Annalen",+"MaTeJ ManTech Journal",+"Mate. Materials",+"Mater Materialpruefung",+"MatEv Materials Evaluation",+"MatG. Mathematical Geology",+"math. arXiv Mathematics e-prints",+"math.parXiv Mathematical Physics e-prints",+"MatIs Matematicheskie Issledovaniia",+"MatL. Materials Letters",+"MatM. Mathematical Modelling",+"MatMo The Mathemtical Monthly",+"MatNa Mathematische Nachrichten",+"MAtom Moscow Atomizdat",+"MatPr Mathematical Programming",+"MatRv Mathematical Reviews",+"MatSP Materials Science Poland",+"MatST Materials Science Technology",+"MatTe Materiaux et Techniques",+"MatTh Materials Theory",+"MatTr Materials Transactions JIM",+"MatVe Matematichki Vesnik",+"MatZe Mathematische Zeitschrift",+"MAUTx University of Texas Monographs in Astronomy",+"MAWMN Mainz Akademie Wissenschaften Mathematisch Naturwissenschaftliche Klasse",+"MBB.. Molecular Biology and Biophysics",+"MCBEH Monatliche Correspondenz zur Beforderung der Erd- und Himmels-kunde",+"MCM.. Mechanics of Composite Materials",+"MComM Mathematical and Computer Modelling",+"MComP Methods in Computational Physics",+"MeAar Meddelser fra Ole Romer Observatoriet Aarhus",+"MeApp Meteorological Applications",+"MeARB Academie Royale de Belgique Classe des Sciences Memoires",+"Meas. Measurements",+"MeAut Meres es Automatika",+"Mecc. Meccanica",+"MecEn Mechanical Engineering",+"MecSM Mechanics of Soft Materials",+"MedPh Medical Physics",+"MEdRJ Mathematics Education Research Journal",+"MEE.. Materials of Electronics Engineering",+"MEEP. Monographs on Environment, Earth and Planets",+"MeeRe Kenneth Mees Observatory Reprints",+"MeGen Mededelingen Universiteit te Gent Sterrenkundig Instituut",+"MeGid Meteorologiia i Gidrologiia",+"MEI.. Mathematical Engineering Industry",+"MeInd Mechanics and Industry",+"MekGS Mekhanika Giroskopicheskikh Sistem",+"MekKM Mekhanika Kompozitnykh Materialov",+"MekP. Mekhanika Polimerov",+"MekTT Mekhanika Tverdogo Tela",+"MeLeu Mededelingen van het Astronomisch Instituut van de Katholieke Universiteit Leuven",+"MelOO Melbourne Observatory Observations",+"MeLuF Meddelanden fran Lunds Astronomiska Observatorium Serie I",+"MeLuS Meddelanden fran Lunds Astronomiska Observatorium Serie II",+"MeMaT Mechanism and Machine Theory",+"MEner Moscow Energoizdat",+"MEPS. Marine Ecology Progress Series",+"MeRAu Mesures Regulation Automatisme",+"Mercu Mercury",+"MeReC Mechanics Research Communications",+"MerRe Instituto Venezolano de Astronomia Merida Venezuela",+"MeRR. Meteornoe Rasprostranenie Radiovoln, Kazan",+"MeScR Measurement Science Review",+"MeScT Measurement Science and Technology",+"MeSJJ Meteorological Society of Japan Journal",+"MeSol Mechanics of Solids",+"MeSRM Memoires Scientifiques de la Revue de Metallurgie",+"MeSSR Akademiia Nauk SSSR Mekhanika Zhidkosti i Gaza",+"Metal Metallofizika",+"MetaM Metamaterials",+"MetAP Meteorology Atmospheric Physics",+"Meteo La Meteorologie",+"MeTeS Mechanika Teoretyczna i Stosowana",+"MetHy Meteorology Hydrology JPRS",+"Metic Meteoritics",+"Metik Meteoritika",+"MetIs Meteornye Issledovaniia",+"Metit Meteorites",+"MetMa Meteorological Magazine",+"Met.. Meteorite - The International Quarterly of Meteorites and Meteorite Science",+"MetMo Meteorological Monographs",+"Metoo Meteoor",+"Metro Metrologia",+"MetRT Metallurgical Research &",+"MetRu Meteorologische Rundschau",+"MetVy Metody Vychislenii",+"MetZe Meteorologische Zeitschrift",+"MetZp Meteorologicke Zpravy",+"Meu1K Observatoire de Meudon",+"MeUpp Meddelanden fran Astronomiska Observatorium Uppsala",+"MExP. Methods of Experimental Physics",+"MFiNM Matematicheskaia Fizika i Nelineinaia Mekhanika",+"MGeoE Materials and Geoenvironment",+"MGeol Marine Geology",+"MGeo. Manuscr. Geod.",+"MGIMO Moskovskii Gosudarstvennyi Universitet Institut Mekhaniki Otchet",+"MGQG. Marine Geology &",+"MGTVM Moskovskij Gosudarstvennyj Tekhnicheskij Universitet Vestnik Seriya Mashinostroenie",+"MGTVP Moskovskij Gosudarstvennyj Tekhnicheskij Universitet Vestnik Seriya Priborostroenie",+"MGUkr Akademiia Nauk Ukrainskoi SSR Morskie Gidrofizicheskie Issledovaniia",+"MGUMN Moskovskii Gosudarstvennyi Universitet Institut Mekhaniki Nauchnye Trudy",+"MHD.. Magnetohydrodynamics",+"MHITR Mitsubishi Heavy Industries Technical Review",+"MiARB Astronomisches Rechen-Institut Heidelberg Mitteilungen Serie B",+"MiARI Astronomisches Rechen-Institut Heidelberg Mitteilungen Serie A",+"MiBas Mitteilungen der Astronomisch-Meteorologischen Anstalt der Universitaet Basel Astronomische Reihe",+"MiBon Mitteilungen der Astronomischen Institute der Universitaet Bonn",+"MiBre Astronomische Mitteilungen der Koeniglichen Universitaets-Sternwarte zu Breslau",+"MicEc Microbial Ecology",+"MicgQ Microgravity Quarterly",+"MicNa Microsystems & Nanoengineering",+"MicST Microgravity Science and Technology",+"MicWa Microwaves",+"MIEBA Moscow Izdatel Energiia Biblioteka Avtomatike",+"MIEBR Moscow Izdatel Energiia Biblioteka Radioelektronike",+"MiElC Military Electronics Countermeasures",+"MiGIR Mitteilungen Geod. Institut Rheinischen Friedrich-Wilhelms-Universitaets. Bonn",+"MiGoe Astronomische Mitteilungen der Universitaets-Sternwarte zu Goettingen",+"MiGra Mitteilungen der Universitaets-Sternwarte Graz",+"MiHam Mitteilungen der Hamburger Sternwarte in Bergedorf",+"MiHar Mitteilungen der Bruno-H.-Buergel-Sternwarte Hartha DDR",+"MiInn Mitteilungen der Sternwarte Innsbruck",+"MiINT Minsk Izdatel Nauka i Tekhnika",+"MiJen Mitteilungen der Universitaets-Sternwarte zu Jena",+"MiJo. Microwave Journal",+"MiKon Mitteilungen der Konkoly Sternwarte Budapest-Szabadsaghegy",+"Mikro Mikroelektronika",+"MikSb Mikroelektronika Sbornik",+"MiMic Microscopy and Microanalysis",+"MIMPE Modern Instrumentation and Measurements in Physics and Engineering",+"MiMue Mitteilungen des Astronomischen Instituts des Universitaet Munster",+"MiMun Mitteilungen der Sternwarte Munchen",+"MINCV Moscow Izdatel Nauka AN SSSR Chteniia imeni Vernadskogo",+"MinDe Mineralium Deposita",+"Miner Mineralogia",+"MINFI Moscow Izdatel Nauka AN SSR Fizicheskii Institut Trudy",+"MINGI Moscow Izdatel Nauka AN SSSR Geologicheskoi Institut Trudy",+"MinJ. Mineralogical Journal",+"MINMI Moscow Izdatel Nauka AN SSSR Matematicheskii Institut Trudy",+"MinM. Mineralogical Magazine",+"MinPe Mineralogy and Petrology",+"MINTF Moscow Izdatel Nauka Teoreticheskaia Fizika",+"MINVS Moscow Izdatel Nauka Vychislitelnaia Seismologiia",+"MiOTL Microwave and Optical Technology Letters",+"MiPot Mitteilungen des Astrophysikalischen Observatoriums Potsdam",+"MiPul Mitteilungen der Nikolai-Hauptsternwarte zu Pulkowo",+"MiRe. Microelectronics Reliability",+"MiSon Mitteilungen der Sternwarte zu Sonneberg",+"MisSp Missiles Spacecraft",+"MISST Moscow Izdatel Sviaz Statisticheskaia Teoriia sviazi",+"MISTr Matematicheskii Institut imeni Steklova Trudy",+"MitAe Max Planck Institut Aeronomie Mitteilungen",+"MitAG Mitteilungen der Astronomischen Gesellschaft Hamburg",+"MiTau Zentralinstitut fuer Astrophysik Mitteilungen des Karl-Schwarzschild-Observatoriums Tautenburg",+"MitSI Mitteilungen Mitt. Staatl. Astr. Sternberg-Inst.",+"MitSZ Astronomischen Mitteilungen Eidgen. Sternwarte Zurich",+"MiTue Mitteilungen des Astronomischen Instituts der Universitaet Tuebingen",+"MitVS Zentralinstitut fuer Astrophysik Sternwarte Sonneberg Mitteilungen ueber Veraenderliche Sterne",+"MiWie Mitteilungen der Universitaets-Sternwarte Wien",+"MIzLI Moscow Izdatel Legkaia Industriia",+"MIzMa Moscow Izdatel Mashinostroenie",+"MIzMe Moscow Izdatel Metallurgiia",+"MIzMU Moscow Izdatel Moskovskogo Universiteta Pt",+"MIzNe Moscow Izdatel Nedra",+"MIZNZ Moscow Izdatel Znanie Novoe Zhizni Nauke Tekhnike Seriia Fizika",+"MIzRS Moscow Izdatel Radio Sviaz",+"MIzSR Moscow Izdatel Sovetskoe Radio",+"MiZur Astronomische Mitteilungen der Eidgenö",+"MIzVS Moscow Izdatel Vysshaia Shkola",+"MJPS. Moldavian Journal of the Physical Sciences",+"MKAtl Astrophysics monographs University of Chicago Press",+"MLST. Marine Life Science & Technology",+"MMAAR Annual Report of the Maria Mitchell Association",+"MmARB Memoires of the Academie Royale de Belgique",+"MmArc Osservazioni e memorie dell'Osservatorio astrofisico di Arcetri",+"MmArS Osservazioni e memorie dell'Osservatorio astrofisico di Arcetri - Appendici",+"MmASI Memoirs of the Astronomical Society of India",+"MMAS. Mathematical Methods in the Applied Sciences",+"MmBAA Memoirs of the British Astronomical Association",+"MmCP. Macromolecular Chemistry and Physics",+"MMFMP Matematicheskie Metody i Fiziko Mekhanicheskie Polia",+"MMI.. Metals and Materials International",+"MmKMO Kakioka Magnetic Observatory Memoirs",+"MmKyo Memoirs Faculty of Sciences University of Kyoto",+"MM... Metals and Materials",+"MmMtS Memoires of the Mount Stromlo Observervatory",+"MMNA. Mathematical Modelling Numerical Analysis",+"MmNap Memorie del R. Osservatorio di Capodimonte in Napoli",+"MmRAS Memoirs of the Royal Astronomical Society",+"MmSAI Memorie della Societa Astronomica Italiana",+"MmSGI Memorie della Societa Geologica Italiana",+"MmSSI Memorie della Societa Degli Spettroscopisti Italiani",+"MmSS. Memorie della Societa Degli Spettroscopisti Italiani, serie 2",+"MMTA. Metallurgical and Materials Transactions A",+"MMTB. Metallurgical and Materials Transactions B",+"MMTE. Metallurgical and Materials Transactions E",+"MMTET Matematicheskoe Modelirovanie i Teoriia Elektricheskikh Tsepei",+"MNRAS Monthly Notices of the Royal Astronomical Society",+"MNSL. Micro and Nano Systems Letters",+"MNSSA Monthly Notes of the Astronomical Society of South Africa",+"MNSSJ Monthly notes of the Astronomical Society of South Africa",+"ModGe Modern Geology",+"ModIn Modern Instrumentation",+"ModPh Modern Physics",+"MoEBA Moscow Energoatomizdat Biblioteka Automatike",+"MoEIT Moskovskii Energeticheskii Institut Trudy",+"MoGid Moscow Gidrometeoizdat",+"MoIKI Moscow Institut Kosmicheskikh Issledovanii AN SSSR",+"MoINI Moscow Izdatel Nauka Issledovaniia Geomagnetizmu Aeronomii i Fizike Solntsa",+"MoIPM Moscow Institut Prikladnoi Matematiki AN SSSR",+"MoIzA Moscow Izdatel Atomizdat",+"MoIzE Moscow Izdatel Energiia",+"MoIzK Moscow Izdatel Khimiia",+"MoIzM Moscow Izdatel Moskovskogo Universiteta",+"MoIzN Moscow Izdatel Nauka",+"MoIzS Moscow Izdatel Sviaz",+"MoIzT Moscow Izdatel Transport",+"MoIzV Moscow Izdatel VINITI",+"MoIzZ Moscow Izdatel Znanie",+"MolAs Molecular Astrophysics",+"MoLLP Moshchnye lazery i lazernaia plazma",+"MolPh Molecular Physics",+"MoMGK Moscow Mezhduvedomstvennyi Geofizicheskii Komitet",+"MoMTN Moscow Mezhdunarodnyi Tsentr Nauchnoi i Tekhnicheskoi Informatsii",+"MonAP Communications du Departement d'Astrophysique de la Faculte des Sciences de Mons Mons Astrophysical Papers",+"Moon. Moon",+"MorGI Morskie Gidrofizicheskie Issledovaniia",+"MoSim Molecular Simulation",+"MosIZ Moscow IZMIRAN",+"MosVI Moscow Voennoe Izdatel",+"MosVo Moscow Voenizdat",+"MotZe Motortechnische Zeitschrift",+"MoVIN Moscow VINITI",+"MoVNT Moscow Vychislitelnyi Tsentr AN SSSR",+"MoVyS Moscow Vysshaia Shkola",+"MPAG. Mathematical Physics, Analysis and Geometry",+"MPARp Max Planck Institut fur Astrophysik Report",+"MPBu. Minor Planet Bulletin",+"MPC.. Minor Planet Circulars",+"MPCPS Mathematical Proceedings of the Cambridge Philosophical Society",+"MPDS. Mechanics and Physics of Discrete Systems",+"MPEC. Minor Planet Electronic Circulars",+"MPERp MPE Report",+"MPFD. Microdevices: Physics and Fabrication Technologies",+"MPLA. Modern Physics Letters A",+"MPLB. Modern Physics Letters B",+"M&P.. Moon and Planets",+"M&PSA Meteoritics and Planetary Science Supplement",+"M&PS. Meteoritics and Planetary Science",+"MRE.. Materials Research Express",+"MROVG Munich R Oldenbourg Verlag GmbH",+"MRRev Magnetic Resonance Review",+"MRSBu MRS Bulletin",+"MRSSP Materials Research Society Symposia Proceedings",+"MSAIQ Societa Astronomica Italiana Memorie Quarter",+"MSAIS Memorie della Societa Astronomica Italiana Supplementi",+"MSB.. Methods in Subnuclear Physics",+"MSCTN Meteorological Satellite Center Technical Note",+"MSE.. Multiscale Science and Engineering",+"MSEnA Materials Science and Engineering A",+"MSEnB Materials Science and Engineering B",+"MSEnC Materials Science and Engineering C",+"MSEng Materials Science and Engineering",+"MSEnR Materials Science and Engineering R Reports",+"MSF.. Materials Science Forum",+"MSHT. Metal Science and Heat Treatment",+"MSHTM Metal Science and Heat Treatment of Metals",+"MSMFR Milano Seminario Matematico e Fisico Rendiconti",+"MSM.. Mechanics of Structures and Machines",+"MSMSE Modelling Simul. Mater. Sci. Eng.",+"Msngr The Messenger",+"MSPE. Management Systems in Production Engineering",+"MSRSL Memoires of the Societe Royale des Sciences de Liege",+"MSRv. Mass Spectrometry Reviews",+"MSSP. Mechanical Systems and Signal Processing",+"MsT.. Masters Thesis",+"MTA.. Metallurgical Transactions A",+"MTB.. Metallurgical Transactions B",+"MTDM. Mechanics of Time-Dependent Materials",+"MTEng Microscale Thermophysical Engineering",+"MT... Metallurgical Transactions",+"MTObM Metallovedenie i Termicheskaia Obrabotka Metallov",+"MtoIs Meteorologicheskie Issledovaniia",+"MTPMM Metallurgical Transactions Physical Metallurgy Materials Science",+"MTRMA Meteor Forschungsergebnisse Reihe B Meteorologie und Aeronomie",+"MtSOM Mount Stromlo Observatory Mimeographs",+"MtWAR Mount Wilson and Palomar Observatory Annual Report",+"MulSE Multiscale Science and Engineering",+"MuMat Multifunctional Materials",+"MUPB. Moscow University Physics Bulletin",+"MURJE Mehran University Research Journal of Engineering and Technology",+"MUSS. Muenchen Universitaets Schriften Serie",+"MUVSK Moskovskii Universitet Vestnik Seriia Khimiia",+"MVMP. Methoden und Verfahren der Mathematischen Physik",+"MVSFA Moskovskii Universitet Vestnik Seriia Fizika Astronomiia",+"MVSMM Moskovskii Universitet Vestnik Seriia Matematika Mekhanika",+"MWE.. Mine Water and The Environment",+"MWGBI Mannheim West Germany Bibliographisches Institut AG",+"MWOAR Mount Wilson Observatory Annual Report",+"MWRv. Monthly Weather Review",+"NaAIJ Nanjing Aeronautical Institute Journal",+"NacEl Nachrichten Elektronik",+"NacZe Nachrichtentechnische Zeitschrift",+"NaGe. National Geographic",+"NanMe Nanomanufacturing and Metrology",+"NanoA Nanoscale Advances",+"NanoF Nano Futures",+"NanoH Nanoscale Horizons",+"NanoL Nano Letters",+"Nanop Nanophotonics",+"NanoR Nanoscale Reports",+"Nanos Nanoscale",+"Nanot Nanotechnology",+"Nansp Nanospectroscopy",+"NanSy Nanoelectromechanical Systems",+"Nanth Nanothermoelectrics",+"NapCo Osservatorio Astronomico di Capodimonte Napoli Contributi Astronomici",+"NaPho Nature Photonics",+"NASCL NASA Circular Letter",+"NASRP NASA Reference Publication",+"NASSP NASA Special Publication",+"NASTM NASA Technical Memo",+"NatAs Nature Astronomy",+"NatBi Nature Biotechnology",+"NatCC Nature Climate Change",+"NatCh Nature Chemistry",+"NatCo Nature Communications",+"NatEn Nature Energy",+"NatGe Nature Geoscience",+"NatH. Natural History",+"NATi. Nordisk Astronomisk Tidsskrift",+"NatMa Nature Materials",+"NATM. Nonlinear Analysis Theory Methods Applications",+"NatNa Nature Nanotechnology",+"NatPh Nature Physics",+"NatRM Nature Reviews Materials",+"NatRP Nature Reviews Physics",+"NatSc Natural Science",+"NatSR Scientific Reports",+"Natur Nature",+"NavAu Navigation Australia",+"Navig Navigation",+"NavPa Navigation Paris",+"NAZ.. Nachrichtenblatt der Astronomischen Zentralstelle Heidelberg",+"NBSSP National Bureau of Standards Special Publication",+"NBSTN National Bureau of Standards Technical Note",+"NCE.. Noise Control Engineering Journal",+"NCimA Nuovo Cimento A Serie",+"NCimB Nuovo Cimento B Serie",+"NCimC Nuovo Cimento C Geophysics Space Physics C",+"NCimD Nuovo Cimento D Serie",+"NCim. Il Nuovo Cimento",+"NCimL Nuovo Cimento Lettere",+"NCimR Nuovo Cimento Rivista Serie",+"NCimS Nuovo Cimento Serie",+"NCNS. Network: Computation in Neural Systems",+"NDS.. Nuclear Data Sheets",+"NDTI. Nondestructive Testing and Evaluation International",+"NDT.. Nuclear Data Tables",+"NeuL. Neuroscience Letters",+"NewA. New Astronomy",+"NewAR New Astronomy Reviews",+"NewSc New Scientist",+"NewSp New Space",+"NGFAW Nachrichtentechnische Gesellschaft Fachtagung ueber Antennen",+"NHCWP North Hollywood Calif Western Periodicals Co",+"NHESD Natural Hazards and Earth System Sciences Discussions",+"NHESS Natural Hazards and Earth System Sciences",+"NHTA. Numerical Heat Transfer Part A - Applications",+"NHTB. Numerical Heat Transfer Part B - Fundamentals",+"Nic1K Observatoire de Nice",+"nicm.rSpace Telescope NICMOS Instrument Science Report",+"NihOC Nihondaira Observatory Circular",+"NIMPA Nuclear Instruments and Methods in Physics Research A",+"NIMPB Nuclear Instruments and Methods in Physics Research B",+"NIMPR Nuclear Instruments and Methods in Physics Research",+"NInfo Nauchnye Informatsii",+"NINT. Nablyud. Iskusstvennykh Nebesnykh Tel",+"NISTJ National Institute of Standards and Technology Journal of Research",+"NISZ. Nabliudeniia Iskusstvennykh Sputnikov Zemli",+"NIUNA Napoli Istituto Universitario Navale Annali",+"NJMM. Neues Jahrbuch Mineralogie Monatshefte",+"NJPh. New Journal of Physics",+"NJSR. Netherlands Journal of Sea Research",+"NKG.. Nihon Kessho Gakkaishi",+"NLE.. Nonlinear Engineering",+"NML.. Nano-Micro Letters",+"NMTE. Nanoscale and Microscale Thermophysical Engineering",+"NN... Neural Networks",+"noao.pNOAO Proposal",+"NoDef Not Defined",+"NOGB. Nachr. Olbers-Ges. Bremen",+"NOHIC Nizamiah JAPAL Rangapur Observatories Hyderabad India Contributions",+"NoIGG Novosibirsk Institut Geologii i Geofiziki SO AN SSSR",+"NoIzN Novosibirsk Izdatel Nauka",+"Nonli Nonlinearity",+"NoPar Notes et Informations",+"NOSCA Observaciones Astronomicas Hechas en el Observatorio de Santiago de Chile",+"nova.pAAS Nova Highlights",+"NovIG Novosibirsk Institut Gidrodinamiki SO AN SSSR Dinamika Sploshnoi Sredy",+"NPAE. Nuclear Physics and Atomic Energy",+"NPGD. Nonlinear Processes in Geophysics Discussions",+"NPGeo Nonlinear Processes in Geophysics",+"NPhS. Nature Physical Science",+"npjAM npj Asia Materials",+"npjCA npj Climate and Atmospheric Science",+"npjCM npj Computational Mathematics",+"npjMG npj Microgravity",+"npjQI npj Quantum Information",+"npjQM npj Quantum Materials",+"npjRM npj Regenerative Medicine",+"npjSL npj Scientific of Learning",+"NPNDS Neutron Physics and Nuclear Data in Science and Technology",+"NPPP. Nuclear and Particle Physics Proceedings",+"NPPSB Nonequilibrium Problems in the Physical Sciences and Biology",+"NPUJ. Northwestern Polytechnical University Journal",+"NRA&A Nouvelle Revue d'Aeronautique et d'Astronautique",+"NRAON National Radio Astronomy Observatory Newsletter",+"nrao.pNational Radio Astronomy Observatory Press Release",+"NRAOP National Radio Astronomy Observatory Publications",+"NRAOR National Radio Astronomy Observatory Reprints",+"NRAOW National Radio Astronomy Observatory Workshop",+"NRL.. Nanoscale Research Letters",+"NROA. Nouvelle Revue d'Optique Appliquee",+"NROpt Nouvelle Revue d'Optique",+"NRRv. Naval Research Reviews",+"NRvEE Nature Reviews Earth and Environment",+"NRvHM New Review of Hypermedia and Multimedia",+"NSAP. Nonlinear, Statistical and Applied Physics",+"NSE.. Nuclear Science Engineering",+"NSMMT Nanoscale Systems Mathematical Modeling Theory and Applications",+"NSM.. Novel Superconducting Materials",+"NSSDC NSSDC Publication",+"NSTBL Notes Scientifiques et Techniques du Bureau des Longitudes",+"NSTIM Notes Scientifiques et Techniques de l'Institut de Mecanique Celeste",+"NTA.. Nonlinear Theory and Its Applications, IEICE",+"NTCo. Nondestructive Testing Communications",+"NTE.. Nondestructive Testing and Evaluation",+"NTN.. New Technology News",+"NTTRv NTT Review",+"NTvA. Novaya tekhn. v astron.",+"NUAAJ Nanjing University Aeronautics and Astronautics Journal",+"NuAlg Numerical Algorithms",+"NucFS Nuclear Fusion Special Supplement",+"NucFu Nuclear Fusion",+"NucIM Nuclear Instruments and Methods",+"nucl.earXiv Nuclear Experiment e-prints",+"nucl.tarXiv Nuclear Theory e-prints",+"NucPh Nuclear Physics",+"NucTe Nuclear Technology",+"NucTF Nuclear Technology Fusion",+"NUDTJ National University Defense Technology Journal",+"NuEnD Nuclear Engineering and Design",+"NUFEM Nagoya University Faculty Engineering Memoirs",+"NuGeo Nuclear Geophysics",+"NuMat Numerische Mathematik",+"NumHT Numerical Heat Transfer",+"NuPhA Nuclear Physics A",+"NuPhB Nuclear Physics B",+"NuPhS Nuclear Physics B Proceedings Supplements",+"NURIA Nagoya University Research Institute of Atmospherics Proceedings",+"NUSEM Nagoya University School Engineering Memoirs",+"NVS.. Nachrichtenblatt der Vereinigung der Sternfreunde",+"NWGot Nachrichten von der Gesellschaft der Wissenschaften zu Goettingen, Mathematisch-Physikalische Klasse",+"NW... Naturwissenschaften",+"NYASA Annals of the New York Academy of Sciences",+"NZJS. New Zealand Journal of Science",+"OAcJ. The Open Acoustics Journal",+"OACSC Observatorio Astronomico de Cordoba, Serie Contribuciones",+"OAeEJ The Open Aerospace Engineering Journal",+"OAJ.. The Open Astronomy Journal",+"OAORP Observations astronomiques faites a l'Observatoire royal de Paris",+"OAPJ. The Open Applied Physics Journal",+"OAP.. Odessa Astronomical Publications",+"OASJ. The Open Atmospheric Science Journal",+"OAst. Open Astronomy",+"OAWMN Oesterreichische Akademie Wissenschaften Mathematisch naturwissenschaftliche Klasse Sitzungsberichte Abteilung",+"OBN1K Observatoire de Besancon - CNES",+"Obser Observation pi",+"Obs.. The Observatory",+"ObVyS Obzory Vysokotemperaturnoi Sverkhprovodimosti",+"OCAM. Optimal Control Applications and Methods",+"OccN. Occultation Newsletter, International Occultation Timing Association (IOTA)",+"OcDyn Ocean Dynamics",+"Ocean Oceanus Summer",+"OcEng Ocean Engineering",+"Ocgy. Oceanology",+"OcMod Ocean Modelling",+"OCMPJ The Open Condensed Matter Physics Journal",+"OCPJ. The Open Chemical Physics Journal",+"OcScD Ocean Science Discussions",+"OcSci Ocean Science",+"OCSC. OAA Compututer Section Circular",+"OCzAS Ondrejov Czechoslovakia Czechoslovak Academy Sciences CAS Astronomical Institute Publications",+"Oecol Oecologia",+"OED.. El Observador de Estrellas Dobles",+"OEJV. Open European Journal on Variable Stars",+"OEng. Open Engineering",+"OERv. Opto-Electronics Review",+"OExpr Optics Express",+"OGC.. The Open Geology Journal",+"OGeo. Open Geosciences",+"OHJ.. The Open Hydrology Journal",+"OIDP. Optoelectronics, Instrumentation and Data Processing",+"OISNP Oxford Pergamon Press International Series on Natural Philosophy",+"OISTS Oxford Pergamon Press International Tables Selected Constants",+"OJA.. Open Journal of Acoustics",+"OJAp. The Open Journal of Astrophysics",+"OJAS. Open Journal of Applied Sciences",+"OJBp. Open Journal of Biophysics",+"OJFD. Open Journal of Fluid Dynamics",+"OJGeo Open Journal of Geology",+"OJMic Open Journal of Microphysics",+"Okean Okeanologiia",+"OLEB. Origins of Life and Evolution of the Biosphere",+"OMatS Open Material Sciences",+"OMEJ. The Open Mechanical Engineering Journal",+"OMExp Optical Materials Express",+"OMJ.. The Open Mechanics Journal",+"OMnJ. The Open Mineralogy Journal",+"OMN.. Optofluidics, Microfluidics and Nanofluidics",+"OMPJ. The Open Mineral Processing Journal",+"OMX.. Optical Materials: X",+"ONCP. Old and New Concepts of Physics",+"ONERA ONERA TP",+"ONJ.. The Open Nanoscience Journal",+"ONMJ. The Open Numerical Methods Journal",+"ONPPJ The Open Nuclear &",+"ONRAS Occasional Notes of the Royal Astronomical Society",+"OOcJ. The Open Oceanagraphy Journalurnal",+"OOEJ. The Open Ocean Engineering Journal",+"OOJ.. The Open Optics Journal",+"OOPS. Fundamentalnye Osnovy Opticheskoi Pamiati i Sredy",+"OOVRO Observations Owens Valley Radio Observatory",+"OPalJ The Open Paleontology Journal",+"OpAtO Optika Atmosfery i Okeana",+"OpAt. Optika Atmosfery",+"OPCJ. The Open Physical Chemistry Journal",+"OPhyJ Open Physics Journal",+"OPhy. Open Physics",+"OPJ.. Optics and Photonics Journal",+"OpMeP Optiko Mekhanicheskaia Promyshlennost",+"OPPJ. The Open Plasma Physics Journal",+"OPP.. Organic Photonics and Photovoltaics",+"OpPuT Optoelektronika i Poluprovodnikovaia Tekhnika",+"OpSCN Optical Sciences Center Newsletter",+"OpSp. Optika i Spektroskopiia",+"OptCo Optics Communications",+"OptEL Optoelectronics Letters",+"OptEn Optical Engineering",+"Optfl Optofluidics",+"OptFT Optical Fiber Technology",+"Optic Optica",+"Optik Optik",+"OptLE Optics and Lasers in Engineering",+"OptL. Optics Letters",+"OptLT Optics Laser Technology",+"OptMa Optical Materials",+"OptNa Optical Nanoscopy",+"OptN. Optics News",+"OptPE Optical Physics and Engineering",+"OptPN Optics & Photonics News",+"OptRv Optical Review",+"OptSp Optics and Spectroscopy",+"OQEle Optical and Quantum Electronics",+"OREJ. The Open Renewable Energy Journal",+"OrGeo Organic Geochemistry",+"Orion Orion: Zeitschrift fü",+"Ori.. Orione",+"OrLi. Origins of Life",+"OrNav Ortung und Navigation",+"ORROE Occasional Reports of the Royal Observatory Edinburgh",+"ORSJ. The Open Remote Sensing Journal",+"OSFOT Observatoire de la Socié",+"OSID. Open Systems and Information Dynamics",+"Osir. Osiris",+"OSJaJ Oceanographical Society of Japan Journal",+"OSJ.. Ocean Science Journal",+"OslR. Institute of Theoretical Astrophysics Blindern Oslo Reports",+"OSpeJ The Open Spectroscopy Journal",+"OSPJ. The Open Signal Processing Journal",+"OSSJ. The Open Surface Science Journal",+"oss..pNASA OSS Proposal",+"OSUC. Observationes Astronomicas Insitutas in Specula Universitatis Caesareae Dorpatensis",+"OSuJ. The Open Superconductors Journal",+"OsUTR Osaka University Technology Reports",+"OtObI Otbor i Obrabotka Informatsii",+"O&T.. Observations et Travaux",+"OtPI. Otbor i Peredacha Informatsii",+"OVS.. Observation of Variable Stars",+"OxfOO Oxford University Observatory Observations",+"PABei Progress in Astronomy",+"PAB.. Publications of The Astrophysics Branch Ottawa",+"PadCR Osservatorio Astronomico di Padova Comunicazioni e Rassegne",+"PADEU Publications of the Astronomy Department of the Eotvos Lorand University",+"PAIB. Publications of the Astronomy Institute of Bonn",+"PAICU Publications of the Astronomical Institute of the Charles University",+"PAICz Publications of the Astronomical Institute of the Czechoslovak Academy of Sciences",+"PAIJ. Physics &",+"PAIKH Publikationen des Astrophysikalischen Instituts Koenigstuhl-Heidelberg",+"Palai PALAIOS",+"PAllO Publications of the Allegheny Observatory of the University of Pittsburgh",+"PalOc Paleoceanography",+"PAM.. Physics of Atoms and Molecules",+"PAN.. Physics of Atomic Nuclei",+"PAOS. Publications of the Astronomical Observatory of Sarajevo",+"PApCh Pure & Applied Chemistry",+"PApGe Pure and Applied Geophysics",+"PAPhS Proceedings of the American Philosophical Society",+"PApOp Pure Applied Optics",+"PA... Popular Astronomy",+"PApPh Pure and Applied Physics",+"ParC. Parallel Computing",+"PaReL Pattern Recognition Letters",+"PASAM Polish Academy of Science Arch Mech",+"PASA. Publications of the Astronomical Society of Australia",+"PASAS Polish Academy of Science Artificial Satellites",+"PASAu Proceedings of the Astronomical Society of Australia",+"PASIG Polish Academy of Sciences Institute of Geophysics Publications",+"PASJ. Publications of the Astronomical Society of Japan",+"PASK. Publications of the Academy of Science Kasakstan Sect. Astrobotanics",+"PASP. Publications of the Astronomical Society of the Pacific",+"PASRB Publications of the Astronomical Society Rudjer Boskovic",+"PAth. Publications of the Laborotory of Astronomy University of Athens",+"PATid PATid___Popular Astronomisk Tidskrift",+"PAUTx University of Texas Publications in Astronomy",+"PAZh. Pisma v Astronomicheskii Zhurnal",+"PBeiO Publications of the Beijing Astronomical Observatory",+"PBosO Publications of the Bosscha Observatory Lembang Indonesia",+"PBrn. Publications of the Astronomical Institute of the University of Borneo",+"PCAS. Proceedings of the California Academy of Sciences",+"PCat. Publications of Osservatorio Astrofisico di Catania",+"PCCP. Physical Chemistry Chemical Physics (Incorporating Faraday Transactions)",+"PCEA. Physics and Chemistry of the Earth A",+"PCEB. Physics and Chemistry of the Earth B",+"PCEC. Physics and Chemistry of the Earth C",+"PCED. Physics and Chemistry of the Earth Delta",+"PCE.. Physics and Chemistry of the Earth",+"PCHEI Physics in Collision: High-Energy ee/ep/pp Interactions",+"PCinO Publications of the Cincinnati Observatory",+"PCMLA Physics and Chemistry of Materials with Low-Dimensional Structures Series A",+"PCMLB Physics and Chemistry of Materials with Low-Dimensional Structures Series B",+"PCMLC Physics and Chemistry of Materials with Low-Dimensional Structures Series C",+"PCMLD Physics and Chemistry of Materials with Low-Dimensional Structures",+"PCM.. Physics and Chemistry of Minerals",+"PCMPS Protection and Control of Modern Power Systems",+"PCooO Publications of the Cook Observatory",+"PCopO Publikationer og mindre Meddeler fra Kobenhavns Observatorium",+"PCPS. Proceedings of the Cambridge Philosophical Society",+"PCSE. Physical Chemistry: Science and Engineering",+"PCS.. Physics and Chemistry in Space",+"PCTM. Physikalisch-Chemische Trenn- und Messmethoden",+"PCZNN Politechnika Czestochowska Zeszyty Naukowe Nauki Techniczne Mechanika",+"PDAO. Publications of the Dominion Astrophysical Observatory Victoria",+"PDAUC Publications of the Department of Astronomy University of Chile",+"PDDO. Publications of the David Dunlap Observatory",+"PDHO. Publications of Debrecen Heliophysical Observatory",+"PDiff Powder Diffraction",+"PDO.. Publications of the Dominion Observatory Ottawa",+"PDreO Publications of the Dresden Observatory",+"PDSS. NASA Planetary Data System",+"PDU.. Physics of the Dark Universe",+"PEEI. Physics and Evolution of the Earth's Interior",+"PEFPN Physica Energiae Fortis et Physica Nuclearis",+"PEPI. Physics of the Earth and Planetary Interiors",+"PEPS. Progress in Earth and Planetary Science",+"PerCo Perkins Observatory Contributions",+"PerMS Perceptual Motor Skills",+"PerOC Perth Observatory Communication",+"PFG.. PFG - Journal of Photogrammetry, Remote Sensing and Geoinformation Science",+"PFP.. Philosophy and Foundations of Physics",+"PFR.. Plasma and Fusion Research",+"PGAOI Pulkovo Glavnaia Astronomicheskaia Observatoriia Izvestiia",+"PGC.. Papers on Global Change IGBP",+"PGenA Publications of the Observatoire Geneve Series A",+"PGenB Publications of the Observatoire Geneve Series B",+"PgE.. Photogrammetric Engineering",+"PgERS Photogrammetric Engineering and Remote Sensing",+"PGLO. Publications of the Goethe Link Observatory",+"PGooO Publications of the Goodsell Observatory, Carleton College",+"Pg... Photogrammetria",+"PGro. Publications of the Kapteyn Astronomical Laboratory Groningen",+"PGZNM Politechnika Gdanska Zeszyty Naukowe Mechanika",+"PhApp Physics and its Applications",+"PhaTr Phase Transitions, A Multinational Journal",+"PhBio Physical Biology",+"PhB.. Physics Bulletin",+"PhChE Physics and Chemistry of Earth",+"PhChH PhysicoChemical Hydrodynamics",+"PhDT. Ph.D. Thesis",+"PhFlA Physics of Fluids A",+"PhFlB Physics of Fluids B",+"PhFl. Physics of Fluids",+"PhiJR Philips Journal Research",+"PhInt Photo Interpretation",+"PhiRR Philips Research Reports",+"PhiTR Philips Technical Review",+"PhLA. Physics Letters A",+"PhLB. Physics Letters B",+"PhLC. Physics Letters Section C Physics Reports C",+"PhLF. Physics Laser Fusion",+"PhL.. Physics Letters",+"PhLRv Physics of Life Reviews",+"PhMet Physics of Metals",+"PhNan Photonics and Nanostructures",+"Phoen Phoenix Mitteilungsblatt fuer Veraenderlichenbeobachter",+"PhoSp Photonics Spectra",+"Phot. Photoniques",+"PhPl. Physics of Plasmas",+"PhP.. Physics in Perspective",+"PhPro Physics Procedia",+"PhQE. Physics of Quantum Electronics",+"PhR.. Physics Reports",+"PhRvA Physical Review A",+"PhRvB Physical Review B",+"PhRvC Physical Review C",+"PhRvD Physical Review D",+"PhRvE Physical Review E",+"PhRvF Physical Review Fluids",+"PhRvI Physical Review Series I",+"PhRvL Physical Review Letters",+"PhRvM Physical Review Materials",+"PhRv. Physical Review",+"PhRvP Physical Review Applied",+"PhRvR Physical Review Research",+"PhRvS Physical Review Accelerators and Beams",+"PhRvX Physical Review X",+"PhSen Photonic Sensors",+"PhSRv Physical Sciences Reviews",+"PhSS. Physics of the Solid State",+"PhST. Physica Scripta Volume T",+"PhTea The Physics Teacher",+"PhTec Physics in Technology",+"PhT.. Physics Today",+"PhuZ. Physik in unserer Zeit",+"PhyA. Physica A Statistical Mechanics and its Applications",+"PhyBC Physica B+C",+"PhyBl Physikalische Blä",+"PhyB. Physica B Condensed Matter",+"PhyC. Physica C Superconductivity",+"PhyD. Physica D Nonlinear Phenomena",+"PhyEd Physics Education",+"PhyE. Physica E Low-Dimensional Systems and Nanostructures",+"PhyEs Physics Essays",+"PhyG. Physikalische Gesellschaft",+"PhyGZ Physikalische Gesellschaft Zü",+"PhyIn Physics International",+"PhylS Physiologist Supplement",+"PhyMe Physical Mesomechanics",+"PhyM. Physiological Measurement",+"PhyN. Physics Notes",+"PhyNr Physica Norvegica",+"PhyNY Physics New York",+"PhyOJ Physics Online Journal",+"PhyO. Physics Open",+"Phy.. Physica",+"PhyR. Physical Research",+"PhySB Physica Scripta B",+"physicarXiv Physics e-prints",+"Physi Physics",+"PhyS. Physica Scripta",+"PhyU. Physics Uspekhi",+"PhyW. Physics World",+"PhyZ. Physikalische Zeitschrift",+"PIAGL Publications de l'Institut d'Astronomie et de Geophysique Georges Lemaitre",+"PIAHS Proceedings of the International Association of Hydrological Sciences",+"PIASE Proceedings of the Indian Academy of Science, Earth and Planetary Sciences",+"PIGP. Proceedings of the Institute of General Physics, Adademy of the Sciences of Russia",+"PILOM Proceedings of the International Latitude Observatory at Mizusawa",+"PINSA Proceedings of the Indian National Science Academy Part A",+"PINSB Proceedings of the Indian National Science Academy Part B",+"PIRE. Proceedings of the IRE",+"PIstO Publications of the Istanbul University Observatory",+"PJAB. Proceeding of the Japan Academy, Series B",+"PJGeo Pakistan Journal of Geology",+"PJMPE Polish Journal of Medical Physics And Engineering",+"PKAO. Pyublikatskii Kievskoj Astronomicheskoj Observatorii",+"PKAS. Publication of Korean Astronomical Society",+"PKCat Publ. House Czech. Acad. Sci.",+"PKirO Publications of the Kirkwood Observatory of Indiana University",+"PKM.. Physik der Kondensierten Materie",+"PKUJ. Publikationen der Kaiserlichen Universitaets-Sternwarte Jurjew",+"PlAst Planetary Astronomy",+"PLDS. Physics of Low-Dimensional Structures",+"PLicO Publications of Lick Observatory",+"PLoSO PLoS ONE",+"PlPh. Plasma Physics",+"PlPhR Plasma Physics Reports",+"PLPla Observatory Astronomical La Plata Series Astronomies",+"PlREx Plasma Research Express",+"PlR.. Planetary Report",+"PLSCB PLoS Computational Biology",+"PlSci Planetary Science",+"PlST. Plasma Science and Technology",+"PMagA Philosophical Magazine, Part A",+"PMagB Philosophical Magazine, Part B",+"PMagL Philosophical Magazine Letters",+"PMag. Philosophical Magazine",+"PManO Publications of the Manila Observatory",+"PMatP Progress in Mathematical Physics",+"PMB.. Physics in Medicine and Biology",+"PMcCO Publications of the Leander McCormick Observatory",+"PMCPA PMC Physics A",+"PMCPB PMC Physics B",+"PMCPC PMC Physics C",+"PMetP Progress in Metal Physics",+"PMetR Papers in Meteorological Research",+"PMG.. Papers Meteorology Geophysics",+"PMMin Proper Motion Survey, University of Minnesota",+"PMM.. Physics of Metals and Metallography",+"PMO.. Perth Meridien Observations",+"PMP.. Powder Metallurgy Progress",+"PMRP. Progress in Medical Radiation Physics",+"PMTF. PMTF Zhurnal Prikladnoi Mekhaniki i Tekhnicheskoi Fiziki",+"PMtv. Facultad de Humanidades y Ciencias Universidad de la Republica Montevideo",+"PMunO Publications of the Munich Observatory",+"PNAOC Publications of the National Astronomical Observatories of China",+"PNAOJ Publications of the National Astronomical Observatory of Japan",+"PNAS. Proceedings of the National Academy of Science",+"PNAU. Proceedings of National Aviation University",+"PnGid Pnevmatika i Gidravlika",+"PNSBP Proceedings of the National Society of Black Physicists",+"PNSci Progress in Natural Science",+"PNSC. Proceedings of the National Science Council",+"POANC Publications of the Observatorie Astronomie Nacional Cerro Calan",+"PoAn. Postepy Astronautyki",+"PoAst Postepy Astronomii Krakow",+"POBeo Publications de l'Observatoire Astronomique de Beograd",+"POBol Publications of dell'Osservatorio Astronomie de Bologna",+"PoCom Polymer Composites",+"PODE. Dun Echt Observatory Publications",+"POHel Publications of the Astronomical Observatory Helsinki",+"POHP. Publications of the Observatoire Haute-Provence",+"PolAt Pollution Atmospherique",+"PolPh Polymer Physics",+"PolPP Poluprovodnikovye Pribory i ikh Primenenie",+"PolRe National Institute Polar Research Memoirs",+"PolSc Polar Science",+"PolSi Poliarnye Siianiia",+"PolTM Poluprovodnikovaia Tekhnika i Mikroelektronika",+"POLyo Publications of the Observatoire de Lyon",+"Polyt Polytechnica",+"PomAK Pomiary Automatyka Kontrola",+"PoMec Polymer Mechanics",+"POMic Publications of Michigan Observatory",+"POMil Pubblicazioni dell'Osservatorio Astronomico di Milano-Merate",+"POMin Publications of the Astronomical Observatory University of Minnesota",+"POPad Pubblicazioni dell'Osservatorio Astronomico di Padova",+"POPot Publikationen des Astrophysikalischen Observatoriums zu Potsdam",+"POrCo Progress in Organic Coatings",+"PorMe Poroshkovaia Metallurgiia",+"PoS.. Proceedings of Science",+"POStr Publication de l'Observatoire de Strasbourg",+"POTor Pubblicazioni Varie Fuori Serie dell'Osservatorio Astronomico di Torino",+"PotUr Potins d'Uranie",+"POVRO Publications of the Owens Valley Observatory",+"POxf. Publications University of Oxford Department of Astrophysics",+"PPCAS Publication of the Pomona College Astronomical Society",+"PPCF. Plasma Physics and Controlled Fusion",+"PPcPp Progress in Photochemistry and Photophysics",+"PPEE. Periodica Polytechnica Electrical Engineering",+"PPhI. Particle Physics Insights",+"PPh.. Papers in Physics",+"PPHTS Physical Properties of High Temperature Superconductors",+"PPME. Periodica Polytechnica Mechanical Engineering",+"PPMtO Publications of the Purple Mountain Observatory",+"PPNL. Physics of Particles and Nuclei Letters",+"PPN.. Physics of Particles and Nuclei",+"PPPLR Princeton Plasma Physics Laboratory Report",+"PPP.. Palaeogeography Palaeoclimatology Palaeoecology",+"PPSA. Proceedings of the Physical Society A",+"PPSB. Proceedings of the Physical Society B",+"PPSL. Proceedings of the Physical Society of London",+"PPS.. Proceedings of the Physical Society",+"PPTE. Periodica Polytechnica Transportation Engineering",+"PQE.. Progress in Quantum Electronics",+"PraAc Prague Academia",+"PrAA. Progress in Astronautics and Aeronautics",+"PrAeS Progress in Aerospace Sciences",+"PrAiA Problemy Arktiki i Antarktiki",+"Prama Pramana",+"PrA.. Progress in Astronomy",+"PrAst Practical Astronomy",+"PrAtO Leningrad Gidrometeoizdat Sovremennye Problemy Atmosfernoi Optiki",+"PrBio Problemy Bioniki",+"PrCmg Problems of Cosmogeny",+"PRCO. Publications of the Riverview College Observatory",+"PrDRV Problemy Difraktsii i Rasprostraneniia Voln",+"PrECS Progress in Energy and Combustion Science",+"PrEM. Probabilistic Engineering Mechanics",+"PrEne Progress in Energy",+"PrEPS Procedia Earth and Planetary Science",+"PreR. Precambrian Research",+"PrExP Propellants and Explosives Pyrotechnics",+"PrEx. Propellants and Explosives",+"PrFA. Problemy Fiziki Atmosfery",+"PrFKL Problemy Iadernoi Fiziki i Kosmicheskikh Luchei",+"PRFVT Plastiques Renforces Fibres de Verre Textile",+"PRIAA Proceedings of the Royal Irish Academy Section A",+"PRIAN Proceedings of the Research Institute of Atmospherics, Nagoya University",+"Prib. Priborostroenie",+"PrICA Proceedings of the ICA",+"PriMM Prikladnaia Matematika i Mekhanika",+"PriMP Prikladnaia Matematika i Programmirovanie",+"PriM. Prikladnaia Mekhanika",+"PRI.. Physics Research International",+"Prir. Priroda",+"PriTE Pribory i Tekhnika Eksperimenta",+"Priv. Private Communication",+"PrKFi Problemy Kosmicheskoi Fiziki",+"PrMas Problemy Mashinostroeniia",+"PrMS. Progress in Materials Science",+"PRNAA Proceedings of the Royal Netherlands Academy of Arts and Sciences",+"PrOce Progress in Oceanography",+"PROE. Publications of the Royal Observatory of Edinburgh",+"PrOpt Progess in Optics",+"ProTe Promyshlennaia Teplotekhnika",+"PRPER Physical Review Physics Education Research",+"PrPG. Progress in Physical Geography",+"PrPh. Progress in Physics",+"PrPNP Progress in Particle and Nuclear Physics",+"PRP.. Pattern Recognition in Physics",+"PrPro Problemy Prochnosti",+"PrSP. Problemy Sluchainogo Poiska",+"PrSS. Progress In Surface Science",+"PRSTP Physical Review Special Topics Physics Education",+"PrTE. Problemy Tekhnicheskoi Elektrodinamiki",+"PrTGE Problemy Teorii Gravitatsii i Elementarnykh Chastits",+"PrTPT Problemy Teploenergetiki i Prikladnoi Teplofiziki",+"PrUkr Akademiia Nauk Ukrains koi RSR Dopovidi Matematika Prirodoznavstvo Tekhnichni Nauki",+"PrVP. Proceedings of Vibration Problems",+"PSAIL Pubblicazioni della Stazione Astronomica Internazionale di Latitudine",+"PSAO. Publications of the Shaanxi Astronomical Observatory",+"PSCDS Publication Speciale du Centre de Donnees Stellaires",+"PSCEC Physical Sciences Series of the Commission of European Communities",+"PSci. Pour la Science",+"PShaO Publications of the Shaanxi Astronomy Observatory",+"PSJ.. The Planetary Science Journal",+"PSL.. Physics of Solids and Liquids",+"PSprO Publications of the Sproul Observatory",+"PSSAR Physica Status Solidi Applied Research",+"PSSBR Physica Status Solidi B Basic Research",+"PSSCR Physica Status Solidi C Current Topics",+"PSSNN Poliarnye Siianiia i Svechenie Nochnogo Neba",+"P&SS. Planetary and Space Science",+"PSSRR Physica Status Solidi Rapid Research Letters",+"PSST. Plasma Sources Science Technology",+"PSZNM Politechnika Slaska Zeszyty Naukowe Mechanika",+"PTarO Publications of the Tartu Astrofizica Observatory",+"PTasO Publications of the Tashkent Astronomical Observatory",+"PTCP. Progress in Theoretical Chemistry and Physics",+"PTEP. Progress of Theoretical and Experimental Physics",+"PThPh Progress of Theoretical Physics",+"PThPS Progress of Theoretical Physics Supplement",+"PTPPB Physics and Technology of Particle and Photon Beams",+"PUAMA Poznan Uniwersytet im Adama Mickiewicza Seria Akustyka",+"PUAMF Poznan Uniwersytet im Adama Mickiewicza Seria Fizyka",+"PUAms Publications of the Astronomical Institute of the University of Amsterdam",+"PUPFA Publications of the University of Pennsylvania Flower Astronomical Observatory",+"PUSK. Publication der Koeniglichen Sternwarte in Kiel",+"PUSNO Publications of the U.S. Naval Observatory Second Series",+"PVasO Publications of the Vassar College Observatory",+"PVSS. Royal Astronomical Society of New Zealand Publications of Variable Star Section",+"PVVO. Publications of the Van Vleck Observatory",+"PWasO Publications of the Washburn Observatory",+"PWHHO Publications of West Hendon House Observatory, Sunderland",+"PWP.. Physics of Wave Phenomena",+"PW&SO Publications of the Warner & Swasey Observatory",+"PYerO Publications of the Yerkes Observatory",+"PYunO Publications of the Yunnan Observatory",+"PZETF Pisma v Zhurnal Eksperimentalnoi i Teoreticheskoi Fiziki",+"PZhTF Pisma v Zhurnal Tekhnischeskoi Fiziki",+"PZ... Peremennye Zvezdy",+"PZP.. Peremennye Zvezdy Prilozhenie",+"QApMa Quarterly of Applied Mathematics",+"QBSA. Quarterly Bulletin on Solar Activity",+"QBS.. Quantum Beam Science",+"QJMAM Quarterly Journal of Mechanics and Applied Mathematics",+"QJMat The Quarterly Journal of Mathematics",+"QJPAM The Quarterly Journal of Pure and Applied Mathematics",+"QJRAS Quarterly Journal of the Royal Astronomical Society",+"QJRMS Quarterly Journal of the Royal Meteorological Society",+"QMQM. Quantum Measurements and Quantum Metrology",+"QREI. Quality Reliability Engineering International",+"QSRv. Quaternary Science Reviews",+"QS&T. Quantum Science and Technology",+"QuEle Quantum Electronics",+"QuFin Quantitative Finance",+"QuInt Quaternary International",+"QuIP. Quantum Information Processing",+"QuOpt Quantum Optics",+"QuRes Quaternary Research",+"RAA.. Research in Astronomy and Astrophysics",+"RadA. Radio Astronomy: Journal of the Society of Amateur Radio Astronomers,",+"RadEf Radiation Effects",+"Radel Radioehlektronika",+"RadIn Radio industry",+"RadM. Radiation Measurements",+"Rad.. Radiant, Journal of the Dutch Meteor Society",+"RadR. Radiation Research",+"RaEE. Radio and Electronic Engineer",+"RaEl. Radiotekhnika i Elektronika",+"RaF.. Radiofizika",+"RALR. Rutherford Appleton Laboratory Report",+"RAOU. Recherches Astronomiques de l'Observatoire d'Utrecht",+"RaPC. Radiation Physics and Chemistry",+"RA... Ricerche Astronomiche",+"RaRLJ Radio Research Laboratory, Journal",+"RaRLR Radio Research Laboratory, Review",+"RAROC Results of Astronomical Observations made at the Royal Observatory, Cape of Good Hope",+"RArtR Rock Art Research",+"RaSc. Radio Science",+"RaT.. Radiotekhnika",+"RBrFi Revista Brasileira de Fisica",+"RCD.. Regular and Chaotic Dynamics",+"RCMS. Rapid Communications in Mass Spectrometry",+"RDTM. Radiation Detection Technology and Methods",+"Rech. La Recherche",+"REDS. Radiation Effects and Defects in Solids",+"REEP. Radio Engineering and Electronic Physics",+"REES. Renewable Energy and Environmental Sustainability",+"RELEA Latin American Journal of Astronomy Education",+"RemS. Remote Sensing",+"ReNEv Research in Nondestructive Evaluation",+"ResPh Results in Physics",+"RF... Raumfahrtforschung",+"RFrG. Revue Francaise de Geotechnique",+"RFrM. Revue Francaise de Mecanique",+"RGAO. Astronomical Observations made at the Royal Observatory at Greenwich",+"RGG.. Reports on Geodesy and Geoinformatics",+"RGOB. Royal Greenwich Observatory Bulletins",+"RGRH. Rep. Hydrograph. Res. Japan",+"RHRJ. Report of Hydrographic Researches in Japan",+"RIG.. Rivista Italiana di Geofisica",+"Rise. Rise Hvezd",+"RJARA Russian Journal of Astrophysical Research Series A",+"RJMP. Russian Journal of Mathematical Physics",+"RJPCA Russian Journal of Physical Chemistry A",+"RLOpt Research Letters in Optics",+"RLPhy Research Letters in Physics",+"RLSFN Rendiconti Lincei. Scienze Fisiche e Naturali",+"RMFMR Rock Mechanics Felsmechanik Mecanique des Roches",+"RMRE. Rock Mechanics and Rock Engineering",+"RMTME USSR Rept Machine Tools Metalworking Equipment JPRS UMM",+"RMxAA Revista Mexicana de Astronomia y Astrofisica",+"RMxFE Revista Mexicana de Fisica E",+"RMxF. Revista Mexicana de Fisica",+"RMxFS Revista Mexicana de Fisica Supplement",+"RNAAS Research Notes of the American Astronomical Society",+"RNAOJ Report of the National Astronomical Observatory of Japan",+"RNAO. Resultados del Observatorio Nacional Argentino",+"RNISZ Rezultaty Nabliudenii Iskusstvennykh Sputnikov Zemli",+"RNOST Research News & Opportunities in Science and Theology",+"RoAJ. Romanian Astronomical Journal",+"ROAn. Royal Observatory Annals",+"Robot Robotica",+"ROCi. Republic Observatory Johannesburg Circular",+"ROCor Resultados del Observatorio Nacional Argentino en Cordoba",+"Roczn Rocznik Astronomiczny Observatorjum Krakowskiego Krakow",+"RoDok Rossijskaya Akademiya Nauk Doklady",+"RoIE. Rossiiskaia Akademiia Nauk Izvestiia Energetika",+"RoIET Rozprawy Inzynierskie Engineering Transactions",+"RoIMT Rossijskaya Akademiya Nauk Izvestiya Mekhanika Tverdogo Tela",+"RoIMZ Rossiiskaia Akademiia Nauk Izvestiia Mekhanika Zhidkosti i Gaza",+"RoIn. Rozprawy Inzynierskie",+"RoISF Rossiiskaia Akademiia Nauk Izvestiia Seriia Fizicheskaia",+"RoIzF Rossijskaya Akademiya Nauk Izvestiya Seriya Fizicheskaya",+"RoJPh Romanian Journal of Physics",+"ROLun Reports of the Lund Observatory",+"RomCo Osservatorio Astronomico di Roma su Monte Mario Contributi Scientifici",+"RoRPh Romanian Reports in Physics",+"RosOB Observatorio Astronomico Municipal de Rosario Argentia Boletin",+"RpBAM USSR Report Space Biology Aerospace Medicine JPRS USB",+"RpCCA USSR Report Cybernetics Computers Automation Technology JPRS UCC",+"RpEEE USSR Rept Electron Elec Eng JPRS UEE",+"RpEE. USSR Rept Eng Equipment JPRS UEQ",+"RpEn. USSR Rept Energy JPRS UEN",+"RpESc USSR Report Earth Sciences JPRS UES",+"RPFSU Research Papers Faculty of Materials Science and Technology Slovak University of Technology",+"RpMP. Reports on Mathematical Physics",+"RpMSM USSR Rept Mater Sci Met JPRS",+"RpPhM USSR Rept Phys Math JPRS UPM",+"RPPh. Reports on Progress in Physics",+"RPRA. Radio Physics and Radio Astronomy",+"RpSBA USSR Rept Space Biol Aerospace Med Sep",+"RpScT JPRS Report Science Technology USSR Space",+"RpSpR USSR Report Space",+"RpTr. USSR Rept Transportation JPRS UTR",+"R&QE. Radiophysics and Quantum Electronics",+"RRDAP Recent Research Development in Applied Physics",+"RRDBB Recent Research Development in Biophysics and Biochemistry",+"RRDBC Recent Research Development in Biophysical Chemistry",+"RRDCP Recent Research Development in Chemical Physics",+"RRDPC Recent Research Development in Physical Chemistry",+"RRDPF Recent Research Development in Physics of Fluids",+"RRDP. Recent Research Development in Physics",+"RRDSP Recent Research Development in Statistical Physics",+"RRMPA Revue Roumaine de Mathematiques Pures et Appliquees",+"RRPRA Russian Radio Physics and Radio Astronomy",+"RRP.. Research Reports in Physics",+"RScEd Research in Science Education",+"RScI. Review of Scientific Instruments",+"RSCT. Transactions of the Royal Society of Canada",+"RSEMS Remote Sensing Electro Magnetic Spectrum",+"RSEnv Remote Sensing of Environment",+"RSEPS Proceedings of the Royal Society of Edinburgh",+"RSESS Remote Sensing in Earth Systems Sciences",+"RSET. Transaction of the Royal Society of Edinburgh",+"RSN&R Royal Society of London Notes & Records",+"RSNSW Journal and Proceedings of the Royal Society of New South Wales",+"RSOS. Royal Society Open Science",+"RSPSA Proceedings of the Royal Society of London Series A",+"RSPSB Proceedings of the Royal Society of London Series B",+"RSPS. Proceedings of the Royal Society of London Series I",+"RSPTA Philosophical Transactions of the Royal Society of London Series A",+"RSPTB Philosophical Transactions of the Royal Society of London Series B",+"RSPT. Philosophical Transactions of the Royal Society of London Series I",+"RSPUT Report Series of the Department of Physics and Science, University of Turku",+"RSQ.. Remote Sensing Quarterly",+"RSTEd Research in Science and Technological Education",+"RST.. Revue Scientifique et Technique CECLES CERS",+"RTP.. Research Trends in Physics",+"RTRE. Radiotekhnika Tecommunications Radio Engineering Radio Engineering",+"RTrTe Revista Transporturilor si Telecomunicatiilor",+"RTSRE Robotic Telescope, Student Research and Education Proceedings",+"RuAer Russian Aeronautics",+"RuCRv Russian Chemical Reviews",+"RuGG. Russian Geology and Geophysics",+"Ruimt Ruimtevaart",+"RuMaS Russian Mathematical Surveys",+"RuMet Russian Metallurgy",+"RuPhJ Russian Physics Journal",+"RvAc. Revue d'Acoustique",+"RvAMS Reviews on Advanced Materials Science",+"RvAqS Reviews in Aquatic Sciences",+"RvA.. Revista Astronomica Organo de la Asociacion Argengina Amigos de la Astronomia Buenos Aires",+"RvAST Reviews of Accelerator Science and Technology",+"RvCF. Revista Colombiana de Fisica",+"RvGeo Reviews of Geophysics",+"RvGeS Reviews of Geophysics Supplement",+"RvGSP Reviews of Geophysics and Space Physics",+"RvMad Revista Real Acad. Ciencias Exact. Fis. Nat. Madrid",+"RvMaP Reviews in Mathematical Physics",+"RvMA. Reviews in Modern Astronomy",+"RvMG. Reviews in Mineralogy and Geochemistry",+"RvMin Reviews of Mineralogy",+"RvMPP Reviews of Modern Plasma Physics",+"RvMP. Reviews of Modern Physics",+"RvMPS Reviews of Modern Physics Supplement",+"RvOp. Reviews of Optics",+"RvPA. Revue de Physique Appliquee",+"RvPD. Revue du Palais de la Decouverte",+"RvPhy Reviews in Physics",+"RvPP. Reviews of Plasma Physics",+"RvPT. Review of Physics in Technology",+"RvRP. Revue Roumaine de Physique",+"RvRRL Reviews of the Radio Research Laboratory",+"RvRST Revue Roumaine des Sciences Techniques Serie de Mecanique Appliquee",+"RvT.. Revue Technique Thomson CSF",+"RvTS. Rivista Tecnica Selenia",+"RWPWZ Rostock Wilhelm Pieck Universitaet Wissenschaftliche Zeitschrift Mathematisch Naturwissenschaftliche Reihe",+"RWTHA Rheinisch Westfaelische Technische Hochschule Aerodynamisches Institut Abhandlungen",+"rxte.pRXTE Proposal",+"RZh.. Referationyj Zhurnal",+"SAAOC South African Astronomical Observatory Circular",+"SAAOR South African Astronomical Observatory Republic",+"Sadha Sadhana",+"SAERI Seoul Korea Atomic Energy Research Institute",+"SAJPh South African Journal of Physics",+"SAJSc South African Journal of Science",+"SAMPJ SAMPE Journal",+"SAMPQ SAMPE Quarterly",+"SAnAp Supplements aux Annales d'Astrophysique",+"SanS. Separata Universidad de Chile Departamento de Astronomia Santiago",+"SANUG Srpska Akademiia Nauka i Umetnosti Glas Odeljenje Tekhnichkikh Nauka",+"SAOSR SAO Special Report",+"SASn. Studia Astronomica Sinica",+"SASS. Society for Astronomical Sciences Annual Symposium",+"SatCo Satellite Communications",+"SBARM SBARMO Bulletin",+"SbMat Sbornik: Mathematics",+"SBuil Sustainable Buildings",+"SCA.. Studii si Cercetari de Astronomie Bucuresti",+"SCB.. Seminars in Cancer Biology",+"ScChA Science in China A: Mathematics",+"ScChB Science in China B: Chemistry",+"ScChD Science China Earth Sciences",+"ScChE Science in China E: Technological Sciences",+"ScChG Science in China: Physics, Mechanics and Astronomy",+"ScChM Science in China e-Engineering & Materials Science",+"ScEdR Science Education Research",+"Sc&Ed Science & Education",+"SchpJ Scholarpedia",+"SciAm Scientific American",+"SciA. Science Advances",+"SciB. Scientia (Bologna)",+"SciDi Science Dimension",+"SciDr Scientific Drilling",+"SciEd Science Education",+"SciIn Science and Innovation",+"SciMo The Scientific Monthly",+"Scim. Scientometrics",+"SciNa The Science of Nature",+"SciN. Science News",+"Sci.. Science",+"SciSn Scientia Sinica",+"Scis. Sciences",+"ScMM. Scripta Metallurgica et Materialia",+"SCMP. Studies in Condensed Matter Physics",+"ScM.. Scripta Metallurgica",+"SCoA. Smithsonian Contributions to Astrophysics",+"SCoK. Smithsonian Contributions to Knowledge",+"SCPMA Science China Physics, Mechanics, and Astronomy",+"ScPPL SciPost Physics Lecture Notes",+"ScPPP SciPost Physics Proceedings",+"ScPP. SciPost Physics",+"ScPr. Science Progress",+"ScReE Scholarly Research Exchange",+"SCSA. Science and Culture Series: Astrophysics",+"SCSMP Science China Series Mathematics Physics Astronomy Technological Sciences",+"SCSP. Science and Culture Series: Physics",+"ScTea The Science Teacher",+"ScTEn Science of the Total Environment",+"Sc&Te Sciences et Techniques",+"SeAc. Sensors and Actuators",+"SECM. Science and Engineering of Composite Materials",+"SedG. Sedimentary Geology",+"Sedim Sedimentology",+"SEEJ. Society of Environmental Engineers Journal",+"SEGeo Seismology and Exploration Geophysics",+"SeiKa Seikei-Kakou",+"Semic Semiconductors",+"SenAR Sendai Astronomiaj Raportoj",+"SenIm Sensing and Imaging",+"SerAJ Serbian Astronomical Journal",+"SeScT Semiconductor Science Technology",+"SFCh. Science Foundation in China",+"SFPTB Societe Francaise de Photogrammetrie et de Teledetection Bulletin",+"SFSN. Scripta Faculty Science Nat. Ujep Brunensis Physica",+"SGC.. Stratigraphy and Geological Correlation",+"SGeo. Surveys in Geophysics",+"SGORS Studies in Geophysical Optics and Remote Sensing",+"S&GS. Science and Global Security",+"SHAN. Society for History of Astronomy News",+"SHEP. Surveys in High Energy Physics",+"SHH.. Stochastic Hydrology and Hydraulics",+"ShMeS Shape Memory and Superelasticity",+"SHMPS Sources in the History of Mathematics and Physical Sciences",+"SHM.. Self-Healing Materials",+"SHPMP Studies in the History and Philosophy of Modern Physics",+"ShWav Shock Waves",+"SIAMR SIAM Review",+"SIAM. Society of Industrial and Applied Mathematics",+"SIBAN Sofia Izdatel Bolgarskoi Akademii Nauk",+"SIDPQ SID Proceedings Quarter",+"SiFoE Siemens Forschungs und Entwicklungsberichte",+"SiFTZ Sibirskii Fiziko Tekhnicheskii Zhurnal",+"SIGMA SIGMA",+"SigPr Signal Processing",+"Sig.. Signal",+"SiMol Single Molecules",+"SImpa Software Impacts",+"Simul Simulation",+"SISN. Science Information Systems Newsletter",+"SiSSR Akademiia Nauk SSSR Sibirskoe Otdelenie Izvestiia Seriia Tekhnicheskie Nauki",+"Situ. Situ",+"SJADS SIAM Journal on Applied Dynamical Systems",+"SJAM. SIAM Journal of Applied Mathematics",+"SJCE. Slovak Journal of Civil Engineering",+"SJCO. SIAM Journal of Control Optimization",+"SJMA. SIAM Journal of Mathematical Analysis",+"SJNA. SIAM Journal on Numerical Analysis",+"SJRUE Scientific Journal of Riga Technical University. Environmental and Climate Technologies",+"SJRUP Scientific Journal of Riga Technical University. Power and Electrical Engineering",+"SkInq Skeptical Inquirer",+"SkyN. Sky News",+"SlaOb Slaboproudy Obzor",+"SLSci Space Life Sciences",+"SMArc Solid Mechanics Archives",+"SMaS. Smart Material Structures",+"SMat. Soft Matter",+"SmCES Smithsonian Contributions to the Earth Sciences",+"Smith Smithsonian",+"SMSPS Stephan Mueller Special Publication Series",+"SMS.. Scientific Modeling and Simulation SMNS",+"SMTS. Soprotivlenie Materialov i Teoriia Sooruzhenii",+"SNG.. Schweizerische Naturforschende Gesellschaft",+"SoByu Soobshcheniya Byurakanskoj Observatorii Akademiya Nauk Armyanskoj SSR Erevan",+"SoCe. Solar Cells",+"SoEnM Solar Energy Materials",+"SoEn. Solar Energy",+"SoftX SoftwareX",+"SoGru Akademiia Nauk Gruzii Soobshcheniia",+"SOILD SOIL Discussions",+"SoilS Soil Science",+"SoKie Sonderdrucke der Sternwarte Kiel",+"SOLA. SOLA - Scientific Online Letters on the Atmosphere",+"SolED Solid Earth Discussions",+"SolE. Solid Earth",+"SoMue Sonderdrucke Universitaet Muenster Astronomisches Institut",+"Sonne Sonne",+"SoPh. Solar Physics",+"SoSAO Soobshcheniya Spetsial'noj Astrofizicheskoj Observatorii",+"SoShe Soobshchenie Shemakhinskoj Astrofizicheskoj Observatorii",+"SoSht Soobshcheniya Gosudarstvennogo Astronomicheskogo Instituta",+"SoSyR Solar System Research",+"SouSt Southern Stars",+"SovAe Soviet Aeronomii",+"Space Space",+"Spark Spark, the AAS Education Newsletter",+"SPBra Scientific Proceedings Faculty of Mechanical Engineering STU in Bratislava",+"SpCoB Space Communication Broadcasting",+"SpCom Space Communications",+"SpecL Spectroscopy Letters",+"SpEd. Space Education",+"SpFl. Spaceflight",+"SPhAc Soviet Physics Acoustics",+"SPhD. Soviet Physics Doklady",+"Spika Spika",+"Spin. Spin",+"SPJCE Selected Scientific Papers - Journal of Civil Engineering",+"SpMar Space Markets",+"SpMME Space Medicine Medical Engineering",+"SpPol Space Policy",+"SpPow Space Power",+"SpRBu Space Research Bulgaria",+"SpReT Space Research Today",+"SPRMD Space Power - Resources, Manufacturing and Development",+"SpScT Space Science and Technology",+"SPTP. Soviet Physics Technical Physics",+"SpT.. Space Technology",+"SPTS. Sensor Physics and Technology Series",+"sptz.pSpitzer Proposal",+"Spvw. Spaceview",+"SpWd. Space World",+"SpWdU Space World U",+"SpWdW Space World W",+"SpWdY Space World Y",+"SpWea Space Weather",+"SrLJP Sri Lankan Journal of Physics",+"SRL.. Surface Review and Letters",+"SRMO. Specula Regia Monachiensi Observationes astronomicae",+"SRPI. Safety and Reliability of Power Industry",+"SRToh Sci. Rep. Tohoku Univ. Eighth Ser.",+"SRXPh SRX Physics",+"SSASJ Soil Science Society of America Journal",+"SScEd Studies in Science Education",+"SSCom Solid State Communications",+"SSCP. Springer Verlag Springer Series on Chemical Physics",+"SScT. Speculations in Science and Technology",+"SSEle Solid State Electronics",+"SSEp. Springer Verlag Springer Series on Electrophysics",+"SSGSR Springer Verlag Springer Series on Group Geophysics Space Research",+"SSHMP Sources and Studies in the History of Mathematics and Physical Sciences",+"SSI.. Space Science Instrumentation",+"SSOS. Springer Verlag Springer Series on Optical Sciences",+"SSPAR Solid State Physics Advances in Research and Applications",+"SSPAS Solid State Physics Advances in Research and Applications Supplement",+"SSPMA Scientia Sinica Physica, Mechanica &",+"SSPRv Space and Solar Power Review",+"SSRvA Soviet Scientific Reviews A Physics Reviews",+"SSRvC Soviet Scientific Reviews C Mathematical Physics Reviews",+"SSRvD Soviet Scientific Reviews D Physicochemical Biology Reviews",+"SSRv. Space Science Reviews",+"SSSAJ Soil Science Society of America Journal",+"SSSci Solid State Sciences",+"SSSMP Scientia Sinica Series Mathematical Physical Technical Sciences",+"SSSSc Springer Series in Surface Sciences",+"SSS.. Social Studies of Science",+"SSSSS Springer Verlag Springer Series on Solid State Sciences",+"SSSyn Springer Verlag Springer Series on Synergetics",+"SSTec Solid State Technology",+"SSTor Studia Societatis Scientiarum Torunensis Sectio F Astronomia",+"SSWP. Springer Verlag Springer Series on Wave Phenomena",+"STAdM Science and Technology of Advanced Materials",+"StaGP Starlink General Paper",+"StAM. Studies in Applied Mathematics",+"StarB Starlink Bulletin",+"StarC Starlink Cookbook",+"StarD StarDate Magazine",+"StarG Starlink Guide",+"StaSc Statistical Science",+"StaSN Starlink System Note",+"StAst Strolling Astronomer",+"StaUN Starlink User Note",+"StCeF Studii si Cercetari de Fizica",+"StCeM Studii si Cercetari Matematice",+"StCMA Studii si Cercetary de Mecanica Aplicata",+"STECF Space Telescope European Coordinating Facility Newsletter",+"Sterb Der Sternenbote Monatsschrift fuer Oesterreichs Amateur-astronomen",+"STERJ Solar Terrestrial and Environmental Research Japan",+"Stern Die Sterne",+"Sterz Sternzeit Mitteilungen der Astrnomischen Vereinigungen Aachen",+"StGeo Studies in Geophysics",+"StGG. Studia Geophysica et Geodaetica",+"StGM. Studia Geotechnica et Mechanica",+"StHCG Studies in High Energy Physics Cosmology and Gravitation",+"StHEP Studies in High Energy Physics",+"StHMP Studies in the History of Mathematics and the Physical Sciences",+"STIA. NASA STI/Recon Technical Report A",+"STICA Space Technology Industrial and Commercial Applications",+"Stiin Stiinta",+"STIN. NASA STI/Recon Technical Report N",+"stis.rSpace Telescope STIS Instrument Science Report",+"StMat Strength of Materials",+"StMet Statistical Methodology",+"STMP. Springer Tracts in Modern Physics",+"StNws ASTM Standardization News",+"StoAn Stockholms Observatoriums Annaler",+"StoOR Stockholms Observatoriums Reports",+"STP.. Solar-Terrestrial Physics",+"Strai Strain",+"StReL Staub Reinhaltung Luft",+"Stroj Strojarstvo",+"StrOp Structural Optimization",+"S&T.. Sky and Telescope",+"StSky Star Sky",+"STSSP Selected Topics in Solid State Physics",+"Sttur Studies in turbulence",+"StuMa Studia Mathematica",+"STVF. Samoletostroenie Tekhnika Vozdushnogo Flota",+"suba.pSubaru Proposal",+"SuEa. Sustainable Earth",+"SuMi. Superlattices and Microstructures",+"SunGe Sun and Geosphere",+"Sunwo Sunworld",+"SurIA Surface and Interface Analysis",+"SurSc Surface Science",+"SurSL Surface Science Letters",+"SurSR Surface Science Reports",+"SurSS Surface Science Spectra",+"SuScT Superconductor Science Technology",+"Sust. Sustainability",+"SuTMP Surface Topography: Metrology and Properties",+"SUVSR Scandinavian Union of Amateur Astronomers Variable Star Section",+"SvAer Soviet Aeronautics",+"SvAL. Soviet Astronomy Letters",+"SvApM Soviet Applied Mechanics",+"SvA.. Soviet Astronomy",+"SVD.. Shock Vibration Digest",+"SvGeo Soviet Geologia",+"SVICB Shock Vibration Information Center Shock Vibration Bulletin",+"SVICD Shock Vibration Information Center Shock Vibration Digest",+"SVICI Shock Vibration Information Center Shock Vibration Inform Digest",+"SVICP Shock Vibration Information Center Shock Vibration Computer Programs",+"SvJNP Soviet Journal of Nuclear Physics",+"SvJOT Soviet Journal of Optical Technology",+"SvJPP Soviet Journal of Plasma Physics",+"SvJQE Soviet Journal of Quantum Electronics",+"SVPCS Springer Verlag Springer Series on Physics Chemistry Space",+"SvPhA Soviet Physics Astronomy",+"SvPhJ Soviet Physics Journal",+"SvPhU Soviet Physics Uspekhi",+"SvPro Svarochnoe Proizvodstvo",+"SvRP. Soviet Radiophysics",+"SvUNT Sverdlovsk Uralskii Nauchnyi Tsentr AN SSSR",+"S&W.. Sterne und Weltraum",+"SydOP Sydney Observatory Papers",+"SyTec Systems Technology",+"SZF.. Solnechno-Zemnaya Fizika",+"SZPA. SIRIUS. Zeitschrift fuer Populaere Astronomie",+"TAASS Topics in Astrophysics, Astrononmy, and Space Science",+"TAEMm Tokyo Metropolitan College Aeronautical Engineering Memoirs",+"TamCo Astronomical Contributions from the University of South Florida Tampa",+"TAM.. Theoretical and Applied Mechanics",+"TANEs Tartu Akademiia Nauk Estonskoi SSR",+"TApPh Topics in Applied Physics",+"TAPS. Transactions of the American Philosophical Society",+"TarOT Tartu Astrofuusika Observatoorium Teated",+"TBBM. Techniques of Biochemical and Biophysical Morphology",+"TCaPS Transactions of the Cambridge Philosophical Society",+"TCD.. The Cryosphere Discussions",+"TCPh. Topics in Current Physics",+"TCry. The Cryosphere",+"TDAPR Telecommunications and Data Acquisition Progress Report",+"Tech. Technology",+"TecN. Technical News",+"TecRv Technology Review",+"Tecto Tectonics",+"Tectp Tectonophysics",+"TeEng Technological Engineering,",+"TekEl Tekhnicheskaia Elektrodinamika",+"Telet Telettra S",+"TelIn Telematics Informatics",+"TellA Tellus Series A",+"TellB Tellus Series B Chemical and Physical Meteorology B",+"Tell. Tellus",+"TeLoA Technika Lotnicza i Astronautyczna",+"TeMAE Terrestrial Magnetism and Atmospheric Electricity (Journal of Geophysical Research)",+"TeMag Terrestrial Magnetism (Journal of Geophysical Research)",+"TeNov Terra Nova",+"TeoEl Teoreticheskaia Elektrotekhnika",+"TeoPM Teoreticheskaia i Prikladnaia Mekhanika",+"TeoVP Teoriia Veroiatnostei i ee Primeneniia",+"TePhL Technical Physics Letters",+"Teplo Teploenergetika",+"Tepsg Teplofizicheskie svoistva gazov",+"TepT. Teplofizika i Teplotekhnika",+"TepVT Teplofizika Vysokikh Temperatur",+"TerCo Osservatorio Astronomico di Collurania Teramo Contributi",+"TerMm Osservatorio Astronomico di Collurania Teramo Memorie ed Osservazioni",+"TerNC Osservatorio Astronomico di Collurania Teramo Note e Comunicazioni",+"Tesla TESLA Electronics",+"TETB. Thyssen Edelstahl Technische Berichte",+"TFFAP Teoriia Funktsii Funktsionalnyi Analiz i ikh Prilozheniia",+"TFizG Teploobmen i Fizicheskaia Gazodinamika",+"Th&Ae Thermophysics and Aeromechanics",+"ThAFM Theoretical and Applied Fracture Mechanics",+"ThApC Theoretical and Applied Climatology",+"ThAst Theoretical Astrophysics",+"ThCFD Theoretical and Computational Fluid Dynamics",+"ThEng Thermal Engineering",+"TIOA. Tomsk Institut Optiki Atmosfery CO AN SSSR",+"TISCI Transactions of the Institute of Systems, Control and Information Engineers",+"TITas Tsirkulyar Astronomicheskogo Instituta Akademiya Nauk Uzbekskoj SSR",+"TIUCS Transactions of the International Union for Cooperation in Solar Research",+"TIzSS Tbilisi Izdatel Sabchota Sakartvelo",+"TJAu. Telecommunication Journal of Australia",+"TJJPT Tuijin Jishu Journal of Propulsion Technology",+"TJPh. Turkish Journal of Physics",+"TJSAI Transactions of the Japanese Society for Artificial Intelligence",+"TJSIE Transactions of The Japanese Society of Irrigation, Drainage and Rural Engineering",+"TLHSQ Transactions of the Literary and Historical Society of Quebec",+"TMatR Translational Materials Research",+"TMKF. Technische Mitteilungen Krupp Forschungsberichte",+"TMOPR Telecommunications and Mission Operations Progress Report",+"TMPGO Tagung ueber Mathematische Probleme Geodaesie Oberwolfach West Germany Bulleting Geodesique",+"TMP.. Theoretical and Mathematical Physics",+"TNEK. Teplovye Napriazheniia Elementakh Konstruktsii",+"TNKS. Tochnost i Nadezhnost Kiberneticheskikh Sistem",+"TNSAN Transient Name Server AstroNote",+"TNSCR Transient Name Server Classification Report",+"TNSFR Transient Name Server Fast Radio Bursts",+"TNSTR Transient Name Server Discovery Report",+"ToASC Torino Accademia delle Scienze Classe di Scienze Fisiche Matematiche e Naturali Atti",+"ToIzL Technisch oekonomische Informationen zivilen Luftfahrt",+"TokAB Tokyo Astronomical Bulletin",+"TokRe Tokyo Astronomical Observatory Reprints",+"TOMar Travaux de l'Observatoire de Marseille",+"TosRv Toshiba Review",+"TouCE Toulouse Cepadues Editions",+"TOYal Transactions of the Astronomical Observatory of Yale University",+"TPAG. Theory and Practice of Applied Geophysics",+"TPhCh Topics in Physical Chemistry",+"TPhy. Techniques of Physics",+"TRACE Transactions of the Japan Society of Refrigerating and Air Conditioning Engineers",+"TrAeR Transactions on Aerospace Research",+"TraGe Travaux Geophysiques",+"TrAGU Transactions, American Geophysical Union",+"TrAlm Trudy Astrofizicheskogo Instituta Alma-Ata",+"TrDus Trudy Instituta Astrofiziki Dushanbe",+"TreP. Osservatorio Privato Specola Ariel Treviso Italia Pubblicazione",+"TRET. Telecommunications and Radio Engineering Telecommunications",+"TrGeo Treatise on Geochemistry",+"TrGRC Geothermal Resources Council Transactions",+"TrGru Tiflis Izdatel Metsniereba Akademiia Nauk Gruzinskoi SSR Matematicheskii Institut Trudy",+"TriP. Osservatorio Astronomico di Trieste Pubblicazioni",+"TrITA Institut Teoreticheskoi Astronomii Trudy",+"TriTr STLE Tribology Transactions",+"TrKaz Trudy Kazanskaia Gorodkoj Astronomicheskoj Observatorii",+"TrKra Seminar Kraevym Zadacham Trudy",+"TrLen Trudy Astronomicheskoj Observatorii Leningrad",+"TrLit Trudy Akademiia Nauk Litovskoi",+"TrMMO Trudy Moskovskoe Matematicheskoe Obshchestvo",+"TrOS. Transactions of the Optical Society",+"TrPet Trudy Seminar imeni G Petrovskogo",+"TrPul Trudy Glavnoj Astronomicheskoj Observatorii v Pulkovo",+"TrRig Trudy Astrofiz. Lab. Riga",+"TrSht Trudy Gosudarstvennogo Astronomicheskogo Instituta",+"TrSpT Transactions of Space Technology Japan",+"TrSSR Trudy Akademiia Nauk SSSR Fizicheskii Institut",+"TrSta Trudy Instituta Astrofiziki Stalinabad",+"TrTas Trudy Tashkentskoj Astronomicheskoj Observatorii",+"TrTIM Tiflis Izdatel Metsniereba Akademiia Nauk Gruzinskoi SSR Institut Geofiziki Trudy",+"TrTsA TsAGI Trudy",+"TrTsI TsIAM Trudy",+"TSDMO Tellus Series Dynamic Meteorology and Oceanography",+"TSE.. Thermal Science and Engineering",+"TSF.. Thin Solid Films",+"TsHUJ Tsing Hua University Journal",+"TSICE Transactions of the Society of Instrument and Control Engineers",+"TsLvo Tsirkulyar Astronomicheskoj Observatorii Lvov",+"TsPul Tsirkulyary Glavnoj Astronomicheskoj Observatorii i Pulkove",+"TSRSG Tohoku University Science Reports Series Geophysics",+"TsShe Tsirkulyar Shemakhinskoj Astrofizicheskoj Observatorii",+"TSSLW Travaux de la Societe des Sciences et des Letters de Wroclaw",+"TsSta Tsirkulyar Stalinabadskoj Astronomicheskoj Observatorii",+"TsTas Tsirkulyar Tashkentskoj Astronomicheskoj Observatorii",+"TsVse Tsirkulyar Vses. astron.-geod. o-va",+"TTP.. Trends in Theoretical Physics",+"TTSP. Transport Theory and Statistical Physics",+"TUAID Tuebingen Universitaet Astronomisches Institut Diplomarbeit",+"TUASB Tokyo University Institute of Space and Aeronautical Science Bulletin",+"TUASR Tokyo University Institute of Space and Aeronautical Science Report",+"TUFEJ Tokyo University Faculty of Engineering Journal Series",+"TUFER Tokyo Denki University Faculty of Engineering Research Reports",+"TUISR Tokyo University Institute Industrial Science Report",+"TUnGG Technische Univ Geodesy Global Geodyn",+"TurTe Turbulentnye techeniia",+"TvOC. Transvaal Observatory Circular",+"UCAFR Universitas Comeniana Acta Facultatis Rerum Naturalium Physica",+"UCLAP Astronomical Papers University of California Los Angeles",+"UECBu University Electro Communications Bulletin",+"UGC.. Nova Acta Regiae Soc. Sci. Upsaliensis Ser. V",+"UGSJR U S Geological Survey Journal Research",+"UISTS San Diego CA Univelt Inc Science Technology Series",+"UkFiZ Ukrainskii Fizicheskii Zhurnal",+"UkJPO Ukrainian Journal of Physical Optics",+"UkMaZ Ukrainskii Matematicheskii Zhurnal",+"UltIm Ultrasonic Imaging",+"Ultmi Ultramicroscopy",+"Ultra Ultrasonics",+"UMAM. Uspekhi Mekhaniki Advances Mechanics",+"UMIB. Unione Matematica Italiana Bollettino",+"Umsch Umschau",+"UMt1K Universite de Montpellier",+"UNAer Universita di Napoli Aeritalia S",+"UnECR University Electro Communications Reports",+"UniCl Universe Classroom",+"Unive Universitas",+"Univ. Universe",+"UNPSA United Nations Programme on Space Applications",+"UppAn Uppsala Astronomical Observatory Annals",+"UppOR Uppsala Astronomical Observatory Reports",+"Urani Urania (Krakow)",+"UrBar Urania (Bracelona)",+"UsFiN Uspekhi Fizicheskikh Nauk",+"USGSP U.S. Geological Survey Professional Paper",+"USGS. U.S. Geological Survey Report",+"USNOA Astronomical Observations made at the U.S. Naval Observatory",+"USNOC U.S. Naval Observatory Circulars",+"USNOM Astronomical and Meteorological Observations made at the U.S. Naval Observatory",+"USNOO Observations made at the U.S. Naval Observatory",+"USOC. Unified System Orbit Computation USOC",+"UtMat Utilitas Mathematica",+"UtrOv Utrechtse Sterrekundige Overdrukken",+"Vacuu Vacuum",+"VAC.. Voies Aviation Civile Fall Winter",+"VADMT VKI New Approaches in the Description and Modeling of Turbulence",+"VADVS VKI Advanced Design of Ventilation Systems",+"VAFC. VKI Axial Flow Compressors",+"VAG.. Vierteljahresschrift der Astronomischen Gesellschaft",+"VANTS Voprosy Atomnoi Nauki i Tekhniki Seriia Fizika Plazmy i Problemy Upravliaemykh Termoiadernykh Reaktsii",+"Vasio Vasiona",+"VatAR Specola Astronomica Vaticana Annual Reports",+"VatCo Specola Astronomica Vaticana Comunicazione",+"VatMA Specola Astronomica Vaticana Miscellanea Astronomica",+"VatOP Vatican Observatory Publications",+"VatPS Specola Astronomica Vaticana Pubblicazioni Serie Seconda",+"VatRA Specola Astronomica Vaticana Richerche Astronomiche",+"VatRS Specola Astronomica Vaticana Ricerche Spettroscopiche",+"VA... Vistas in Astronomy",+"VBLT. VKI Boundary Layers in Turbomachines",+"VCCPP VKI Combined Cycles for Power Plants",+"VCFDI VKI Computational Fluid Dynamics for Industrial Flows",+"VCGFV VKI Computer Graphics Flow Visualization and Computational Fluid Dynamics",+"VDIF. VDI Forschungsheft",+"VDIZF VDI Zeitschriften Fortschritt Berichte Reihe Stroemungstechnik",+"VDIZ. VDI Z",+"VeABD Veroeffentlichungen des Astronomischen Rechen-Instituts zu Berlin-Dahlem",+"VeARI Veroeffentlichungen des Astronomischen Rechen-Instituts Heidelberg",+"VeBab Veroeffentlichungen der Sternwarte Babelsberg",+"VeBam Veroeffentlichungen der Remeis-Sternwarte zu Bamberg",+"VeBB. Veroeffentlichungen der Universitaetssternwarte zu Berlin-Babelsberg",+"VeBKI Veroeffentlichungen des Bayerische Kommission Int. Erdmessung",+"VeBoc Veroeffentlichungen des Astronomischen Instituts der Ruhr-Universitaet Bochum",+"VeBon Veroeffentlichungen des Astronomisches Institute der Universitaet Bonn",+"VeFra Veroeffentlichungen des Astronomisches Institute der Universitaet Frankfurt",+"VeGG. Veroeffentlichungen der Geod. Geophys",+"VeGoe Veroeffentlichungen der Universitaets-Sternwarte zu Goettingen",+"VeHei Veroeffentlichungen der Badischen Sternwarte zu Heidelberg",+"VeJen Veroeffentlichungen der Universitaets-Sternwarte zu Jena",+"VeKAB Veroeffentlichungen des Koeniglichen Astronomischen Rechen-Instituts zu Berlin",+"VeKar Veroeffentlichungen der Grossherzoglichen Sternwarte zu Karlsruhe",+"VeKaz Akademiia Nauk Kazakhskoi SSR Vestnik",+"VeKha Vestnik Khar'kov Universitet",+"VeKie Vestnik Kievskogo Universiteta Seriya Astronomii",+"VeKoe Veroeffentlichungen der Universitaets-Sternwarte Koenigsberg Pr.",+"VeLdn Verslag van den staat der Sterrewacht te Leiden",+"VeLei Veroeffentlichungen der Universitaetssternwarte zu Leipzig",+"VeLen Leningradskii Universitet Vestnik Matematika Mekhanika Astronomiia",+"VeLGU Vestnik LGU",+"VeMos Vestnik Moskovskogo Universiteta Seriya 3 Fizika Astronomiya",+"VeMun Veroeffentlichungen der Sternwarte Munchen",+"VeNav Akademiia Navuk BSSR Vestsi Seryia Fizika Tekhnichnykh Navuk",+"Verme Vermessungstechnik",+"Vertf Vertiflite",+"Vert. Vertica",+"Vesmi Vesmir",+"VeSon Veroeffentlichungen der Sternwarte Sonneberg",+"VeSSR Akademiia Nauk SSSR Vestnik",+"VETT. Voprosy Elektroniki Tverdogo Tela",+"VeWFS Veroeffentlichung der Wilhelm Foerster Sterwarte",+"VeZPE Veroffentlichungen des Zentralinstituts Physik der Erde",+"VGTET VKI Gas Turbine Engine Transient Behaviour",+"VIAEA Vienna International Atomic Energy Agency",+"VICFD VKI An Introduction to Computational Fluid Dynamics",+"ViGeo Vissha Geodeziia",+"ViHei Veroeffentlichungen der Badischen Landes-Sternwarte zu Heidelberg",+"VIHE. VKI Industrial Heat Exchangers",+"VilCo Villanova University Observatory Contributions",+"VilOB Vilnius Astronomijos Observatorijos Biuletenis",+"VIMT. VKI An Introduction to Modeling Turbulence",+"VISBD Vibration Inst Shock Vibration Digest",+"VisKi Visnik Kiiv. Univ., Fiz.-Mat. Nauki, Astron",+"ViUkr Akademiia Nauk Ukrains koi RSR Visnik",+"VJS.. Virginia Journal of Science",+"VKAWA Verhandelingen der Koninklijke Akademie van Wetenschappen te Amsterdam",+"VKha. Vestnik Khar'kovskogo Universiteta",+"VKie. Veroeffentlichungen der Universitaets-Sternwarte Kiel",+"VKILV VKI Laser Velocimetry",+"VKIMT VKI Measurement and Techniques",+"VKIRT VKI Radial Turbines",+"VKISP VKI Spacecraft Propulsion",+"VMATP VKI Modeling and Applications of Transport Phenomena in Porous Media",+"VMed. Vierteljahrschrift fü",+"VMHT. VKI Methodology Hypersonic Testing",+"VMKAN Verslagen en Mededeelingen der Kon. Academie van Wetenschappen, Afd. Natuurkunde",+"VMOIP Voprosy Metrologicheskogo Obespecheniia Izmereniia Parametrov Tekhnologicheskikh Lazerov",+"VMSAI Video Memorie della Societa Astronomica Italiana",+"VMTA. VKI Measurement Techniques in Aerodynamics",+"VNGG. VKI Numerical Grid Generation",+"VNG.. Vierteljahrsschrift der Naturforschenden Gesellschaft in Zü",+"VNMFT VKI Numerical Methods for Flows in Turbomachinery",+"VnMP. Vychislitelnye Metody i Programmirovanie",+"VnPM. Vychislitelnaia i Prikladnaia Matematika",+"VopDP Voprosy Dinamiki i Prochnosti",+"VopGA Voprosy Gidrodinamiki Atmosfery",+"VopK. Voprosy Kibernetiki",+"VopTP Voprosy Teorii Plazmy",+"VossZ Vossische Zeitung",+"VoTAS Voprosy Teorii Atomnykh Stolknovenii",+"VPIDV VKI Particle Image Displacement Velocimetry",+"VSD.. Vehicle System Dynamics, International Journal of Vehicle Mechanics and Mobility",+"VSSCi Royal Astronomical Society of New Zealand Variable Star Section Circulars",+"VTJ.. Vitro Technical Journal",+"VTSAU Voprosy Teorii Sistem Avtomaticheskogo Upravleniia",+"VTSF. VKI Turbulent Shear Flows",+"VVRD. VKI Vibration Rotor Dynamics",+"WaMot Wave Motion",+"WASP. Water Air and Soil Pollution",+"WatWa Water Waves",+"WavEl Wave Electronics",+"WBWA. Weltraumfahrt. Beitraege zur Weltraumforschung und Astronautik",+"WCD.. Weather and Climate Dynamics",+"WCRp. World Climate Report",+"WCS.. Weather, Climate and Society",+"WearB Wear B",+"Wear. Wear",+"WeiEn Weight Engineering",+"WeldJ Welding Journal",+"Welt. Die Weltall",+"Werk. Werkgroepnieuws",+"wfc..rSpace Telescope WFC Instrument Science Report",+"WFINw IAU Working Group on Wide-Field Imaging, Newsletter",+"wfir.pNASA WFIRST Proposal",+"wfpc.rSpace Telescope WFPC2 Instrument Science Report",+"WiEng Wind Engineering",+"WiEn. Wind Energy",+"WinAR Annual Report of the Windsor Observatory, New South Wales",+"WisBB Monatsber. Deutsch. Akad Wissenschaftliche Berlin",+"WisBT Wissenschaftliche Berichte AEG Telefunken",+"WisZe Wissenschaftliche Zeitschrift",+"WJCMP World Journal of Condensed Matter Physics",+"WJM.. World Journal of Mechanics",+"WJNSE World Journal of Nano Science and Engineering",+"WJNST World Journal of Nuclear Science and Technology",+"wps..pNASA WPS Proposal",+"WRCM. Waves in Random and Complex Media",+"WRM.. Waves in Random Media",+"WRR.. Water Resources Research",+"WSAAA Workshop Series of the Asociacion Argentina de Astronomia",+"W&S.. Waerme und Stoffuebertragung",+"Wszec Wszechswiat",+"WtFor Weather and Forecasting",+"Wthr. Weather",+"Wuli. Wuli",+"xmm..pXMM-Newton Press Release",+"xmm..pXMM-Newton Proposal",+"XRS.. X-ray Spectrometry",+"YaFiz Yadernaya Fizika",+"YalAR Annual report of the Astronomer of the Winchester Observatory of Yale College",+"YalRY Reports for the year presented by the Board of Managers of the Observatory of Yale University to the President and Fellows",+"YamC. Yamamoto Circular",+"yCatp VizieR Online Data Catalog (other)",+"yCat. VizieR Online Data Catalog",+"YerOB Bulletin of the Yerkes Observatory of the University of Chicago",+"YUFEM Yamaguchi University Faculty of Engineering Memoirs",+"YUTR. Yamaguchi University Technology Reports",+"ZaDN. Zagadnienia Drgan Nieliniowych",+"ZAGeo Zeitschrift fur Angewandte Geographie",+"ZaLab Zavodskaia Laboratoriia",+"ZaMM. Zeitschrift Angewandte Mathematik und Mechanik",+"ZaMP. Zeitschrift Angewandte Mathematik und Physik",+"ZAPhy Zeitschrift fur Angewandte Physik",+"ZaTsA TsAGI Uchenye Zapiski",+"ZA... Zeitschrift fur Astrophysik",+"ZEAPC Zeitschrift fü",+"ZeIE. Zeitschrift elektrische Informations und Energietechnik",+"ZeMet Zeitschrift fur Meteorologie",+"ZemVs Zemlia i Vselennaia",+"Zenit Zenit",+"ZePAN Zeitschrift Physik Atomic Nuclei",+"ZEVGA Zeitschrift fur Eisenbahnwesen und Verkehrstechnik Glasers Annalen",+"ZFlu. Zeitschrift fur Flugwissenschaften",+"ZFlWe Zeitschrift fur Flugwissenschaften und Weltraumforschung",+"ZGeo. Zeitschrift fur Geophysik",+"ZGlGl Zeitschrift fur Gletscherkunde und Glazialgeologie",+"ZGmS. Zeitschrift fur Geomorphologie Supplement",+"ZGm.. Zeitschrift fur Geomorphologie",+"ZhETF Zhurnal Eksperimentalnoi i Teoreticheskoi Fiziki",+"ZhPhy Zhurnal Physik",+"ZhPmR ZhETF Pisma Redaktsiiu",+"ZhPS. Zhurnal Prikladnoi Spektroskopii",+"ZhTFi Zhurnal Tekhnicheskoi Fiziki",+"ZiZa. Ziran Zazhi",+"ZKMP. Zeitschrift fur Kristallographie Mineralogie und Petrographie",+"ZKS.. Zeitschrift fur Kristallographie Supplements",+"ZK... Zeitschrift fur Kristallographie",+"ZMetl Zeitschrift fur Metallkunde",+"ZMP.. Zeitschrift fü",+"ZNatA Zeitschrift Naturforschung Teil A",+"ZNPFK Zhurnal Nauchnoi i Prikladnoi Fotografii i Kinematografii",+"ZPCF. Zeitschrift fur Physikalische Chemie Frankfurt",+"ZPCNF Zeitschrift fur Physikalische Chemie Neue Folge",+"ZPCW. Zeitschrift fur Physikalische Chemie Wiesbaden",+"ZPC.. Zeitschrift fur Physikalische Chemie",+"ZPhyA Zeitschrift fur Physik A Hadrons and Nuclei",+"ZPhyB Zeitschrift fur Physik B Condensed Matter",+"ZPhyC Zeitschrift fur Physik C Particles and Fields",+"ZPhyD Zeitschrift fur Physik D Atoms Molecules Clusters",+"ZPhy. Zeitschrift fur Physik",+"Zprav Zpravodaj VZLU",+"ZvDeb Zvaigsnota Debess",+"ZVer. Zeitschrift Vermessungswes.",+"ZVMMF Zhurnal Vychislitelnoi Matematiki i Matematicheskoi Fiziki",+"ZWer. Zeitschrift Werkstofftechnik",+"TDM.. 2D Materials",+"TDR.. 3D Research", }; static const int njournals = sizeof( journals ) / sizeof( journals[0] );
bibutils/bibcore.c view
@@ -1,7 +1,7 @@ /* * bibcore.c *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under the GPL version 2 *@@ -20,12 +20,14 @@ #define BIBL_INTERNALIN (BIBL_LASTIN+1) #define BIBL_INTERNALOUT (BIBL_LASTOUT+1) -#define debug_set( p ) ( p->verbose > 1 )-#define verbose_set( p ) ( p->verbose )+#define debug_set( p ) ( (p)->verbose > 1 )+#define verbose_set( p ) ( (p)->verbose ) static void report_params( FILE *fp, const char *f, param *p ) {+ fflush( NULL );+ fprintf( fp, "-------------------params start for %s\n", f ); fprintf( fp, "\tprogname='%s'\n\n", p->progname ); @@ -96,10 +98,12 @@ bibl_duplicateparams( param *np, param *op ) { int status;+ slist_init( &(np->asis) );- slist_init( &(np->corps) ); status = slist_copy( &(np->asis), &(op->asis ) ); if ( status!=SLIST_OK ) return BIBL_ERR_MEMERR;++ slist_init( &(np->corps) ); status = slist_copy( &(np->corps), &(op->corps ) ); if ( status!=SLIST_OK ) return BIBL_ERR_MEMERR; @@ -109,41 +113,41 @@ if ( !np->progname ) return BIBL_ERR_MEMERR; } - np->readformat = op->readformat;- np->writeformat = op->writeformat;-- np->charsetin = op->charsetin;+ np->readformat = op->readformat;+ np->charsetin = op->charsetin; np->charsetin_src = op->charsetin_src;- np->utf8in = op->utf8in;- np->latexin = op->latexin;- np->xmlin = op->xmlin;+ np->utf8in = op->utf8in;+ np->latexin = op->latexin;+ np->xmlin = op->xmlin; - np->charsetout = op->charsetout;+ np->writeformat = op->writeformat;+ np->charsetout = op->charsetout; np->charsetout_src = op->charsetout_src;- np->utf8out = op->utf8out;- np->utf8bom = op->utf8bom;- np->latexout = op->latexout;- np->xmlout = op->xmlout;- np->nosplittitle = op->nosplittitle;+ np->utf8out = op->utf8out;+ np->utf8bom = op->utf8bom;+ np->latexout = op->latexout;+ np->xmlout = op->xmlout;+ np->nosplittitle = op->nosplittitle; - np->verbose = op->verbose;- np->format_opts = op->format_opts;- np->addcount = op->addcount;- np->output_raw = op->output_raw;+ np->verbose = op->verbose;+ np->format_opts = op->format_opts;+ np->addcount = op->addcount;+ np->output_raw = op->output_raw; np->singlerefperfile = op->singlerefperfile; - np->readf = op->readf;- np->processf = op->processf;- np->cleanf = op->cleanf;- np->typef = op->typef;- np->convertf = op->convertf;- np->headerf = op->headerf;- np->footerf = op->footerf;+ np->readf = op->readf;+ np->processf = op->processf;+ np->cleanf = op->cleanf;+ np->typef = op->typef;+ np->convertf = op->convertf;+ np->headerf = op->headerf;+ np->footerf = op->footerf; np->assemblef = op->assemblef;- np->writef = op->writef;- np->all = op->all;- np->nall = op->nall;+ np->writef = op->writef; + np->all = op->all;+ np->nall = op->nall;+ return BIBL_OK; } @@ -295,11 +299,11 @@ } static void-bibl_verbose2( fields *f, char *filename, long nrefs )+bibl_verbose_reference( fields *f, char *filename, long refnum ) { int i, n; n = fields_num( f );- fprintf( stderr, "======== %s %ld : converted\n", filename, nrefs );+ fprintf( stderr, "======== %s %ld : converted\n", filename, refnum ); for ( i=0; i<n; ++i ) { fprintf( stderr, "'%s'='%s' level=%d\n", (char*) fields_tag( f, i, FIELDS_CHRP_NOUSE ),@@ -307,33 +311,20 @@ fields_level( f, i ) ); } fprintf( stderr, "\n" );- fflush( stderr ); } -#if 0 static void-bibl_verbose1( fields *f, fields *orig, char *filename, long nrefs )+bibl_verbose( bibl *bin, const char *msg1, const char *msg2 ) {- int i, n;- n = fields_num( orig );- fprintf( stderr, "======== %s %ld : processed\n", filename, nrefs );- for ( i=0; i<n; ++i ) {- fprintf( stderr, "'%s'='%s' level=%d\n",- (char*) fields_tag( orig, i, FIELDS_CHRP_NOUSE ),- (char*) fields_value( orig, i, FIELDS_CHRP_NOUSE ),- fields_level( orig, i ) );- }- if ( f ) bibl_verbose2( f, filename, nrefs );+ long i;+ fflush( stdout );+ fprintf( stderr, "-------------------%s begin %s\n", msg1, msg2);+ for ( i=0; i<bin->n; ++i )+ bibl_verbose_reference( bin->ref[i], "", i+1 );+ fprintf( stderr, "-------------------%s end %s\n", msg1, msg2);+ fflush( stderr ); }-#endif -static void-bibl_verbose0( bibl *bin )-{- int i;- for ( i=0; i<bin->nrefs; ++i )- bibl_verbose2( bin->ref[i], "", i+1 );-} /* extract_tag_value *@@ -453,12 +444,13 @@ } static int-read_ref( FILE *fp, bibl *bin, char *filename, param *p )+read_refs( FILE *fp, bibl *bin, char *filename, param *p ) {- int nrefs = 0, bufpos = 0, ok, ret=BIBL_OK, fcharset;/* = CHARSET_UNKNOWN;*/+ int refnum = 0, bufpos = 0, ret=BIBL_OK, fcharset;/* = CHARSET_UNKNOWN;*/ str reference, line; char buf[256]=""; fields *ref;+ str_init( &reference ); str_init( &line ); while ( p->readf( fp, buf, sizeof(buf), &bufpos, &line, &reference, &fcharset ) ) {@@ -469,14 +461,14 @@ bibl_free( bin ); goto out; }- if ( p->processf( ref, reference.data, filename, nrefs+1, p )){- ok = bibl_addref( bin, ref );- if ( !ok ) {- ret = BIBL_ERR_MEMERR;+ if ( p->processf( ref, reference.data, filename, refnum+1, p )){+ ret = bibl_addref( bin, ref );+ if ( ret!=BIBL_OK ) { bibl_free( bin ); fields_delete( ref ); goto out; }+ refnum += 1; } else { fields_delete( ref ); }@@ -502,7 +494,7 @@ static int bibl_notexify( char *tag ) {- char *protected[] = { "DOI", "URL", "REFNUM", "FILEATTACH" };+ char *protected[] = { "DOI", "URL", "REFNUM", "FILEATTACH", "FILE" }; int i, nprotected = sizeof( protected ) / sizeof( protected[0] ); for ( i=0; i<nprotected; ++i ) if ( !strcasecmp( tag, protected[i] ) ) return 1;@@ -551,88 +543,45 @@ static int bibl_fixcharsets( bibl *b, param *p ) {- int status = BIBL_OK;+ int status; long i;- for ( i=0; i<b->nrefs && status==BIBL_OK; ++i )- status = bibl_fixcharsetdata( b->ref[i], p );- return status;-} -static int-build_refnum( fields *f, long nrefs, int *n )-{- char *year, *author, *p, num[512];- int status, ret = BIBL_OK;- str refnum;-- *n = -1;-- str_init( &refnum );-- year = fields_findv( f, LEVEL_MAIN, FIELDS_CHRP_NOUSE, "DATE:YEAR" );- if ( !year )- year = fields_findv_firstof( f, LEVEL_ANY, FIELDS_CHRP_NOUSE,- "DATE:YEAR", "PARTDATE:YEAR", NULL );-- author = fields_findv( f, LEVEL_MAIN, FIELDS_CHRP_NOUSE, "AUTHOR" );- if ( !author )- author = fields_findv_firstof( f, LEVEL_ANY, FIELDS_CHRP_NOUSE,- "AUTHOR", "AUTHOR:CORP", "AUTHOR:ASIS", NULL );-- if ( year && author ) {- p = author;- while ( *p && *p!='|' )- str_addchar( &refnum, *p++ );- p = year;- while ( *p && *p!=' ' && *p!='\t' )- str_addchar( &refnum, *p++ );- } else {- sprintf( num, "%ld", nrefs );- str_mergestrs( &refnum, "ref", num, NULL );- }- if ( str_memerr( &refnum ) ) {- ret = BIBL_ERR_MEMERR;- goto out;+ for ( i=0; i<b->n; ++i ) {+ status = bibl_fixcharsetdata( b->ref[i], p );+ if ( status!=BIBL_OK ) return status; } - status = fields_add( f, "REFNUM", refnum.data, LEVEL_MAIN );- if ( status!=FIELDS_OK ) ret = BIBL_ERR_MEMERR;- else *n = fields_find( f, "REFNUM", LEVEL_MAIN );--out:- str_free( &refnum );-- return ret;+ return BIBL_OK; } static int-bibl_checkrefid( bibl *b, param *p )+bibl_addcount( bibl *b ) { char buf[512];- int n, status; fields *ref; long i;+ int n; - for ( i=0; i<b->nrefs; ++i ) {+ for ( i=0; i<b->n; ++i ) {+ ref = b->ref[i];+ n = fields_find( ref, "REFNUM", LEVEL_MAIN );- if ( n==FIELDS_NOTFOUND ) {- status = build_refnum( ref, i+1, &n );- if ( status!=BIBL_OK ) return status;- }- if ( p->addcount ) {- sprintf( buf, "_%ld", i+1 );- str_strcatc( &(ref->data[n]), buf );- if ( str_memerr( &(ref->data[n]) ) )- return BIBL_ERR_MEMERR;+ if ( n==FIELDS_NOTFOUND ) continue;++ sprintf( buf, "_%ld", i+1 );+ str_strcatc( fields_value( ref, n, FIELDS_STRP_NOUSE ), buf );+ if ( str_memerr( fields_value( ref, n, FIELDS_STRP_NOUSE ) ) ) {+ return BIBL_ERR_MEMERR; }+ } return BIBL_OK; } static int-generate_citekey( fields *f, int nref )+generate_citekey( fields *f, long nref ) { int n1, n2, status, ret; char *p, buf[100];@@ -641,100 +590,68 @@ str_init( &citekey ); n1 = fields_find( f, "AUTHOR", LEVEL_MAIN );+ if ( n1==FIELDS_NOTFOUND ) n1 = fields_find( f, "AUTHOR:ASIS", LEVEL_MAIN );+ if ( n1==FIELDS_NOTFOUND ) n1 = fields_find( f, "AUTHOR:CORP", LEVEL_MAIN ); if ( n1==FIELDS_NOTFOUND ) n1 = fields_find( f, "AUTHOR", LEVEL_ANY );+ if ( n1==FIELDS_NOTFOUND ) n1 = fields_find( f, "AUTHOR:ASIS", LEVEL_ANY );+ if ( n1==FIELDS_NOTFOUND ) n1 = fields_find( f, "AUTHOR:CORP", LEVEL_ANY );+ n2 = fields_find( f, "DATE:YEAR", LEVEL_MAIN ); if ( n2==FIELDS_NOTFOUND ) n2 = fields_find( f, "DATE:YEAR", LEVEL_ANY ); if ( n2==FIELDS_NOTFOUND ) n2 = fields_find( f, "PARTDATE:YEAR", LEVEL_MAIN ); if ( n2==FIELDS_NOTFOUND ) n2 = fields_find( f, "PARTDATE:YEAR", LEVEL_ANY );+ if ( n1!=FIELDS_NOTFOUND && n2!=FIELDS_NOTFOUND ) {- p = f->data[n1].data;++ p = fields_value( f, n1, FIELDS_CHRP_NOUSE ); while ( p && *p && *p!='|' ) { if ( !is_ws( *p ) ) str_addchar( &citekey, *p ); p++; }- p = f->data[n2].data;++ p = fields_value( f, n2, FIELDS_CHRP_NOUSE ); while ( p && *p ) { if ( !is_ws( *p ) ) str_addchar( &citekey, *p ); p++; }- if ( str_memerr( &citekey ) ) {- ret = -1;- goto out;- }- status = fields_add( f, "REFNUM", citekey.data, 0 );- if ( status!=FIELDS_OK ) {- ret = -1;- goto out;- }- } else {- sprintf( buf, "ref%d\n", nref );- str_strcpyc( &citekey, buf );+ }- ret = fields_find( f, "REFNUM", LEVEL_ANY );-out:- str_free( &citekey );- return ret;-} -static int-resolve_citekeys( bibl *b, slist *citekeys, int *dup )-{- const char abc[]="abcdefghijklmnopqrstuvwxyz";- int nsame, ntmp, n, i, j, status = BIBL_OK;- str tmp;+ else {+ sprintf( buf, "ref%ld", nref );+ str_strcpyc( &citekey, buf );+ } - str_init( &tmp );+ if ( str_memerr( &citekey ) ) {+ ret = -1;+ goto out;+ } - for ( i=0; i<citekeys->n; ++i ) {- if ( dup[i]==-1 ) continue;- nsame = 0;- for ( j=i; j<citekeys->n; ++j ) {- if ( dup[j]!=i ) continue;- str_strcpy( &tmp, slist_str( citekeys, j ) );- if ( str_memerr( &tmp ) ) {- status = BIBL_ERR_MEMERR;- goto out;- }- ntmp = nsame;- while ( ntmp >= 26 ) {- str_addchar( &tmp, 'a' );- ntmp -= 26;- }- if ( ntmp<26 && ntmp>=0 )- str_addchar( &tmp, abc[ntmp] );- if ( str_memerr( &tmp ) ) {- status = BIBL_ERR_MEMERR;- goto out;- }- nsame++;- dup[j] = -1;- n = fields_find( b->ref[j], "REFNUM", LEVEL_ANY );- if ( n!=FIELDS_NOTFOUND ) {- str_strcpy(&((b->ref[j])->data[n]),&tmp);- if ( str_memerr( &((b->ref[j])->data[n]) ) ) {- status = BIBL_ERR_MEMERR;- goto out;- }- }- }+ status = fields_add( f, "REFNUM", str_cstr( &citekey ), LEVEL_MAIN );+ if ( status!=FIELDS_OK ) {+ ret = -1;+ goto out; }++ ret = fields_find( f, "REFNUM", LEVEL_MAIN ); out:- str_free( &tmp );- return status;+ str_free( &citekey );+ return ret; } static int-get_citekeys( bibl *b, slist *citekeys )+get_citekeys( bibl *bin, slist *citekeys ) {- int i, n, status;+ int n, status; fields *f;+ long i; - for ( i=0; i<b->nrefs; ++i ) {- f = b->ref[i];+ for ( i=0; i<bin->n; ++i ) {+ f = bin->ref[i]; n = fields_find( f, "REFNUM", LEVEL_ANY );- if ( n==FIELDS_NOTFOUND ) n = generate_citekey( f, i );- if ( n!=FIELDS_NOTFOUND && f->data[n].data ) {- status = slist_add( citekeys, &(f->data[n]) );+ if ( n==FIELDS_NOTFOUND ) n = generate_citekey( f, i+1 );+ if ( n!=FIELDS_NOTFOUND && fields_has_value( f, n ) ) {+ status = slist_add( citekeys, fields_value( f, n, FIELDS_STRP_NOUSE ) ); if ( status!=SLIST_OK ) return BIBL_ERR_MEMERR; } else { status = slist_addc( citekeys, "" );@@ -745,15 +662,11 @@ return BIBL_OK; } -static int -dup_citekeys( bibl *b, slist *citekeys )+static int+identify_duplicates( bibl *b, slist *citekeys, int *dup ) {- int i, j, status = BIBL_OK, *dup, ndup=0;-- dup = ( int * ) malloc( sizeof( int ) * citekeys->n );- if ( !dup ) return BIBL_ERR_MEMERR;+ int i, j, ndup = 0; - for ( i=0; i<citekeys->n; ++i ) dup[i] = -1; for ( i=0; i<citekeys->n-1; ++i ) { if ( dup[i]!=-1 ) continue; for ( j=i+1; j<citekeys->n; ++j ) {@@ -765,72 +678,145 @@ } } }- if ( ndup ) status = resolve_citekeys( b, citekeys, dup );++ return ndup;+}++static int+build_new_citekey( int nsame, str *old_citekey, str *new_citekey )+{+ const char abc[]="abcdefghijklmnopqrstuvwxyz";++ str_strcpy( new_citekey, old_citekey );++ while ( nsame >= 26 ) {+ str_addchar( new_citekey, 'a' );+ nsame -= 26;+ }++ if ( nsame>=0 ) str_addchar( new_citekey, abc[nsame] );++ return ( str_memerr( new_citekey ) ) ? BIBL_ERR_MEMERR : BIBL_OK;+}++static int+resolve_duplicates( bibl *b, slist *citekeys, int *dup )+{+ int nsame, n, i, j, status = BIBL_OK;+ str new_citekey, *ref_citekey;++ str_init( &new_citekey );++ for ( i=0; i<citekeys->n; ++i ) {++ if ( dup[i]==-1 ) continue;++ nsame = 0;++ for ( j=i; j<citekeys->n; ++j ) {++ if ( dup[j]!=i ) continue;++ dup[j] = -1;++ status = build_new_citekey( nsame, slist_str( citekeys, j ), &new_citekey );+ if ( status!=BIBL_OK ) goto out;++ n = fields_find( b->ref[j], "REFNUM", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) continue;++ ref_citekey = fields_value( b->ref[j], n, FIELDS_STRP_NOUSE );++ str_strcpy( ref_citekey, &new_citekey );+ if ( str_memerr( ref_citekey ) ) { status = BIBL_ERR_MEMERR; goto out; }++ nsame++;+ }+ }+out:+ str_free( &new_citekey );+ return status;+}++static int+identify_and_resolve_duplicate_citekeys( bibl *b, slist *citekeys )+{+ int i, *dup, ndup, status=BIBL_OK;++ dup = ( int * ) malloc( sizeof( int ) * citekeys->n );+ if ( !dup ) return BIBL_ERR_MEMERR;+ for ( i=0; i<citekeys->n; ++i ) dup[i] = -1;++ ndup = identify_duplicates( b, citekeys, dup );++ if ( ndup ) status = resolve_duplicates( b, citekeys, dup );+ free( dup ); return status; } static int-uniqueify_citekeys( bibl *b )+uniqueify_citekeys( bibl *bin ) { slist citekeys; int status;+ slist_init( &citekeys );- status = get_citekeys( b, &citekeys );++ status = get_citekeys( bin, &citekeys ); if ( status!=BIBL_OK ) goto out;- status = dup_citekeys( b, &citekeys );++ status = identify_and_resolve_duplicate_citekeys( bin, &citekeys ); out: slist_free( &citekeys ); return status; } static int-clean_ref( bibl *bin, param *p )+clean_refs( bibl *bin, param *p ) { if ( p->cleanf ) return p->cleanf( bin, p ); else return BIBL_OK; } static int -convert_ref( bibl *bin, char *fname, bibl *bout, param *p )+convert_refs( bibl *bin, char *fname, bibl *bout, param *p ) {+ int reftype = 0, status; fields *rin, *rout;- int reftype = 0, ok, status; long i; - for ( i=0; i<bin->nrefs; ++i ) {+ for ( i=0; i<bin->n; ++i ) {+ rin = bin->ref[i];+ rout = fields_new(); if ( !rout ) return BIBL_ERR_MEMERR;- if ( p->typef ) - reftype = p->typef( rin, fname, i+1, p );++ if ( p->typef ) reftype = p->typef( rin, fname, i+1, p );+ status = p->convertf( rin, rout, reftype, p ); if ( status!=BIBL_OK ) return status;+ if ( p->all ) { status = process_alwaysadd( rout, reftype, p ); if ( status!=BIBL_OK ) return status; status = process_defaultadd( rout, reftype, p ); if ( status!=BIBL_OK ) return status; }- ok = bibl_addref( bout, rout );- if ( !ok ) return BIBL_ERR_MEMERR;- }- if ( debug_set( p ) ) {- fflush( stdout );- fprintf( stderr, "-------------------start for convert_ref\n");- bibl_verbose0( bout );- fprintf( stderr, "-------------------end for convert_ref\n" );- fflush( stderr );++ status = bibl_addref( bout, rout );+ if ( status!=BIBL_OK ) return status; }- status = uniqueify_citekeys( bout );- return status;++ return BIBL_OK; } int bibl_read( bibl *b, FILE *fp, char *filename, param *p ) {- int ok, status;- param lp;+ int status = BIBL_OK;+ param read_params; bibl bin; if ( !b ) return BIBL_ERR_BADINPUT;@@ -838,91 +824,72 @@ if ( !p ) return BIBL_ERR_BADINPUT; if ( bibl_illegalinmode( p->readformat ) ) {- if ( debug_set( p ) ) {- fflush( stdout );- report_params( stderr, "bibl_read", p );- }+ if ( debug_set( p ) ) report_params( stderr, "bibl_read", p ); return BIBL_ERR_BADINPUT; } - status = bibl_setreadparams( &lp, p );+ status = bibl_setreadparams( &read_params, p ); if ( status!=BIBL_OK ) {- if ( debug_set( p ) ) {- fflush( stdout );- report_params( stderr, "bibl_read", p );- }+ if ( debug_set( p ) ) report_params( stderr, "bibl_read", p ); return status; } + if ( debug_set( &read_params ) ) {+ report_params( stderr, "bibl_read", &read_params );+ }+ bibl_init( &bin ); - status = read_ref( fp, &bin, filename, &lp );+ status = read_refs( fp, &bin, filename, &read_params ); if ( status!=BIBL_OK ) {- if ( debug_set( p ) ) {- fflush( stdout );- report_params( stderr, "bibl_read", &lp );- }- bibl_freeparams( &lp );+ if ( debug_set( &read_params ) ) report_params( stderr, "bibl_read", &read_params );+ bibl_freeparams( &read_params ); return status; } - if ( debug_set( p ) ) {- fflush( stdout );- report_params( stderr, "bibl_read", &lp );- fprintf( stderr, "-------------------raw_input start for bibl_read\n");- bibl_verbose0( &bin );- fprintf( stderr, "-------------------raw_input end for bibl_read\n" );- fflush( stderr );+ if ( debug_set( &read_params ) ) {+ bibl_verbose( &bin, "raw_input", "for bibl_read" ); } - if ( !lp.output_raw || ( lp.output_raw & BIBL_RAW_WITHCHARCONVERT ) ) {- status = bibl_fixcharsets( &bin, &lp );- if ( status!=BIBL_OK ) return status;- if ( debug_set( p ) ) {- fprintf( stderr, "-------------------post_fixcharsets start for bibl_read\n");- bibl_verbose0( &bin );- fprintf( stderr, "-------------------post_fixcharsets end for bibl_read\n" );- fflush( stderr );- }+ if ( !read_params.output_raw ) {+ status = clean_refs( &bin, &read_params );+ if ( status!=BIBL_OK ) goto out;+ if ( debug_set( &read_params ) ) bibl_verbose( &bin, "post_clean_refs", "for bibl_read" ); }- if ( !lp.output_raw ) {- status = clean_ref( &bin, &lp );- if ( status!=BIBL_OK ) return status;- if ( debug_set( p ) ) {- fprintf( stderr, "-------------------post_clean_ref start for bibl_read\n");- bibl_verbose0( &bin );- fprintf( stderr, "-------------------post_clean_ref end for bibl_read\n" );- fflush( stderr );- }- ok = convert_ref( &bin, filename, b, &lp );- if ( ok!=BIBL_OK ) return ok;- if ( debug_set( p ) ) {- fprintf( stderr, "-------------------post_convert_ref start for bibl_read\n");- bibl_verbose0( &bin );- fprintf( stderr, "-------------------post_convert_ref end for bibl_read\n" );- fflush( stderr );- }- } else {- if ( debug_set( p ) ) {- fprintf( stderr, "-------------------here1 start for bibl_read\n");- bibl_verbose0( &bin );- fprintf( stderr, "-------------------here1 end for bibl_read\n" );- fflush( stderr );- }- ok = bibl_copy( b, &bin );- if ( !ok ) {- bibl_freeparams( &lp );- return BIBL_ERR_MEMERR;++ if ( ( !read_params.output_raw ) || ( read_params.output_raw & BIBL_RAW_WITHCHARCONVERT ) ) {+ status = bibl_fixcharsets( &bin, &read_params );+ if ( status!=BIBL_OK ) goto out;+ if ( debug_set( &read_params ) ) bibl_verbose( &bin, "post_fixcharsets", "for bibl_read" );+ }++ if ( !read_params.output_raw ) {+ status = convert_refs( &bin, filename, b, &read_params );+ if ( status!=BIBL_OK ) goto out;+ if ( debug_set( &read_params ) ) bibl_verbose( b, "post_convert_refs", "for bibl_read" );+ }++ else {+ status = bibl_copy( b, &bin );+ if ( status!=BIBL_OK ) goto out;+ if ( debug_set( &read_params ) ) bibl_verbose( b, "post_bibl_copy", "for bibl_read" );+ }++ if ( ( !read_params.output_raw ) || ( read_params.output_raw & BIBL_RAW_WITHMAKEREFID ) ) {+ status = uniqueify_citekeys( b );+ if ( status!=BIBL_OK ) goto out;+ if ( read_params.addcount ) {+ status = bibl_addcount( b );+ if ( status!=BIBL_OK ) goto out; }+ if ( debug_set( &read_params ) ) bibl_verbose( &bin, "post_uniqueify_citekeys", "for bibl_read" ); }- if ( !lp.output_raw || ( lp.output_raw & BIBL_RAW_WITHMAKEREFID ) )- bibl_checkrefid( b, &lp ); +out: bibl_free( &bin );-- bibl_freeparams( &lp );+ bibl_freeparams( &read_params ); - return BIBL_OK;+ return status; } static FILE *@@ -943,7 +910,7 @@ found = fields_find( reffields, "REFNUM", LEVEL_MAIN ); /* find new filename based on reference */ if ( found!=-1 ) {- sprintf( outfile,"%s.%s",reffields->data[found].data, suffix );+ sprintf( outfile,"%s.%s",(char*)fields_value(reffields,found,FIELDS_CHRP_NOUSE), suffix ); } else sprintf( outfile,"%ld.%s",nref, suffix ); count = 0; fp = fopen( outfile, "r" );@@ -952,9 +919,8 @@ count++; if ( count==60000 ) return NULL; if ( found!=-1 )- sprintf( outfile, "%s_%ld.%s", - reffields->data[found].data, count, suffix );- else sprintf( outfile,"%ld_%ld.%s",nref, count, suffix );+ sprintf( outfile, "%s_%ld.%s", (char*)fields_value( reffields, found, FIELDS_CHRP_NOUSE ), count, suffix );+ else sprintf( outfile,"%ld_%ld.%s", nref, count, suffix ); fp = fopen( outfile, "r" ); } return fopen( outfile, "w" );@@ -969,7 +935,7 @@ fields_init( &out ); - for ( i=0; i<b->nrefs; ++i ) {+ for ( i=0; i<b->n; ++i ) { fp = singlerefname( b->ref[i], i, p->writeformat ); if ( !fp ) return BIBL_ERR_CANTOPEN;@@ -1009,13 +975,13 @@ } if ( p->headerf ) p->headerf( fp, p );- for ( i=0; i<b->nrefs; ++i ) {+ for ( i=0; i<b->n; ++i ) { if ( p->assemblef ) { fields_free( &out ); status = p->assemblef( b->ref[i], &out, p, i ); if ( status!=BIBL_OK ) break;- if ( debug_set( p ) ) bibl_verbose2( &out, "", i+1 );+ if ( debug_set( p ) ) bibl_verbose_reference( &out, "", i+1 ); } else { use = b->ref[i]; }@@ -1052,22 +1018,12 @@ fflush( stdout ); } - if ( debug_set( p ) ) {- fprintf( stderr, "-------------------raw input start for bibl_write\n");- bibl_verbose0( b );- fprintf( stderr, "-------------------raw input end for bibl_write\n" );- fflush( stderr );- }+ if ( debug_set( p ) ) bibl_verbose( b, "raw_input", "for bibl_write" ); status = bibl_fixcharsets( b, &lp ); if ( status!=BIBL_OK ) goto out; - if ( debug_set( p ) ) {- fprintf( stderr, "-------------------post-fixcharsets start for bibl_write\n");- bibl_verbose0( b );- fprintf( stderr, "-------------------post-fixcharsets end for bibl_write\n" );- fflush( stderr );- }+ if ( debug_set( p ) ) bibl_verbose( b, "post-fixcharsets", "for bibl_write" ); if ( p->singlerefperfile ) status = bibl_writeeachfp( fp, b, &lp ); else status = bibl_writefp( fp, b, &lp );
+ bibutils/bibdefs.h view
@@ -0,0 +1,17 @@+/*+ * bibdefs.h+ *+ * Copyright (c) Chris Putnam 2005-2020+ *+ * Source code released under GPL version 2+ *+ */+#ifndef BIBDEFS_H+#define BIBDEFS_H++#define BIBL_OK (0)+#define BIBL_ERR_BADINPUT (-1)+#define BIBL_ERR_MEMERR (-2)+#define BIBL_ERR_CANTOPEN (-3)++#endif
bibutils/bibformats.h view
@@ -11,25 +11,26 @@ #include "bibutils.h" -int adsout_initparams ( param *pm, const char *progname );-int biblatexin_initparams( param *pm, const char *progname );-int bibtexin_initparams ( param *pm, const char *progname );-int bibtexout_initparams ( param *pm, const char *progname );-int copacin_initparams ( param *pm, const char *progname );-int ebiin_initparams ( param *pm, const char *progname );-int endin_initparams ( param *pm, const char *progname );-int endout_initparams ( param *pm, const char *progname );-int endxmlin_initparams ( param *pm, const char *progname );-int isiin_initparams ( param *pm, const char *progname );-int isiout_initparams ( param *pm, const char *progname );-int medin_initparams ( param *pm, const char *progname );-int modsin_initparams ( param *pm, const char *progname );-int modsout_initparams ( param *pm, const char *progname );-int nbibin_initparams ( param *pm, const char *progname );-int nbibout_initparams ( param *pm, const char *progname );-int risin_initparams ( param *pm, const char *progname );-int risout_initparams ( param *pm, const char *progname );-int wordin_initparams ( param *pm, const char *progname );-int wordout_initparams ( param *pm, const char *progname );+int adsout_initparams ( param *pm, const char *progname );+int biblatexin_initparams ( param *pm, const char *progname );+int biblatexout_initparams( param *pm, const char *progname );+int bibtexin_initparams ( param *pm, const char *progname );+int bibtexout_initparams ( param *pm, const char *progname );+int copacin_initparams ( param *pm, const char *progname );+int ebiin_initparams ( param *pm, const char *progname );+int endin_initparams ( param *pm, const char *progname );+int endout_initparams ( param *pm, const char *progname );+int endxmlin_initparams ( param *pm, const char *progname );+int isiin_initparams ( param *pm, const char *progname );+int isiout_initparams ( param *pm, const char *progname );+int medin_initparams ( param *pm, const char *progname );+int modsin_initparams ( param *pm, const char *progname );+int modsout_initparams ( param *pm, const char *progname );+int nbibin_initparams ( param *pm, const char *progname );+int nbibout_initparams ( param *pm, const char *progname );+int risin_initparams ( param *pm, const char *progname );+int risout_initparams ( param *pm, const char *progname );+int wordin_initparams ( param *pm, const char *progname );+int wordout_initparams ( param *pm, const char *progname ); #endif
bibutils/bibl.c view
@@ -1,104 +1,124 @@ /* * bibl.c *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under the GPL version 2 * */ #include <stdio.h> #include <stdlib.h>+#include <string.h>+#include "bibdefs.h" #include "bibl.h" void bibl_init( bibl *b ) {- b->nrefs = b->maxrefs = 0L;+ b->n = b->max = 0L; b->ref = NULL; } static int-bibl_malloc( bibl * b )+bibl_alloc( bibl * b ) { int alloc = 50;- b->nrefs = 0;+ b->ref = ( fields ** ) malloc( sizeof( fields* ) * alloc );- if ( b->ref ) {- b->maxrefs = alloc;- return 1;- } else {- fprintf( stderr, "%s: allocation error\n", __FUNCTION__ );- return 0;- }+ if ( !b->ref ) return BIBL_ERR_MEMERR;++ b->max = alloc;++ return BIBL_OK; } static int bibl_realloc( bibl * b ) {- int alloc = b->maxrefs * 2;+ long alloc = b->max * 2; fields **more;+ more = ( fields ** ) realloc( b->ref, sizeof( fields* ) * alloc );- if ( more ) {- b->ref = more;- b->maxrefs = alloc;- return 1;- } else {- fprintf( stderr, "%s: allocation error\n", __FUNCTION__ );- return 0;- }+ if ( !more ) return BIBL_ERR_MEMERR;++ b->ref = more;+ b->max = alloc;++ return BIBL_OK; } int bibl_addref( bibl *b, fields *ref ) {- int ok = 1;- if ( b->maxrefs==0 ) ok = bibl_malloc( b );- else if ( b->nrefs >= b->maxrefs ) ok = bibl_realloc( b );- if ( ok ) {- b->ref[ b->nrefs ] = ref;- b->nrefs++;+ int status = BIBL_OK;++ if ( b->max==0 )+ status = bibl_alloc( b );+ else if ( b->n >= b->max )+ status = bibl_realloc( b );++ if ( status==BIBL_OK ) {+ b->ref[ b->n ] = ref;+ b->n++; }- return ok;+ return status; } void bibl_free( bibl *b ) { long i;- for ( i=0; i<b->nrefs; ++i )++ for ( i=0; i<b->n; ++i ) fields_delete( b->ref[i] );- if ( b->ref ) free( b->ref );- b->ref = NULL;- b->nrefs = b->maxrefs = 0;++ free( b->ref );++ bibl_init( b ); } /* bibl_copy() *- * returns 1 on success, 0 on failure (memory error)+ * returns BIBL_OK on success, BIBL_ERR_MEMERR on failure */ int bibl_copy( bibl *bout, bibl *bin ) {- fields *refin, *refout;- int i, j, n, status, ok, level;- char *tag, *value;- for ( i=0; i<bin->nrefs; ++i ) {- refin = bin->ref[i];- refout = fields_new();- if ( !refout ) return 0;- n = fields_num( refin );- for ( j=0; j<n; ++j ) {- tag = fields_tag( refin, j, FIELDS_CHRP );- value = fields_value( refin, j, FIELDS_CHRP );- level = fields_level( refin, j );- if ( tag && value ) {- status = fields_add_can_dup( refout, tag, value, level );- if ( status!=FIELDS_OK ) return 0;- }- }- ok = bibl_addref( bout, refout );- if ( !ok ) return 0;+ fields *ref;+ int status;+ long i;++ for ( i=0; i<bin->n; ++i ) {++ ref = fields_dupl( bin->ref[i] );+ if ( !ref ) return BIBL_ERR_MEMERR;++ status = bibl_addref( bout, ref );+ if ( status!=BIBL_OK ) return status;+ }- return 1;++ return BIBL_OK; } +/* bibl_findref()+ *+ * returns position of reference matching citekey, else -1+ */+long+bibl_findref( bibl *bin, const char *citekey )+{+ long i;+ int n;++ for ( i=0; i<bin->n; ++i ) {++ n = fields_find( bin->ref[i], "refnum", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) continue;++ if ( !strcmp( fields_value( bin->ref[i], n, FIELDS_CHRP_NOUSE ), citekey ) ) return i;++ }++ return -1;+}
bibutils/bibl.h view
@@ -1,7 +1,7 @@ /* * bibl.h *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under the GPL version 2 *@@ -15,15 +15,16 @@ #include "reftypes.h" typedef struct {- long nrefs;- long maxrefs;+ long n;+ long max; fields **ref; } bibl; -extern void bibl_init( bibl *b );-extern int bibl_addref( bibl *b, fields *ref );-extern void bibl_free( bibl *b );-extern int bibl_copy( bibl *bout, bibl *bin );+void bibl_init( bibl *b );+int bibl_addref( bibl *b, fields *ref );+void bibl_free( bibl *b );+int bibl_copy( bibl *bout, bibl *bin );+long bibl_findref( bibl *bin, const char *citekey ); #endif
bibutils/biblatexin.c view
@@ -1,8 +1,8 @@ /* * biblatexin.c *- * Copyright (c) Chris Putnam 2008-2019- * Copyright (c) Johannes Wilm 2010-2019+ * Copyright (c) Chris Putnam 2008-2020+ * Copyright (c) Johannes Wilm 2010-2020 * * Program and source code released under the GPL version 2 *@@ -17,6 +17,7 @@ #include "utf8.h" #include "str_conv.h" #include "fields.h"+#include "latex_parse.h" #include "slist.h" #include "name.h" #include "reftypes.h"@@ -471,163 +472,15 @@ PUBLIC: void biblatexin_cleanf() *****************************************************/ -static void-biblatex_process_tilde( str *s )-{- char *p, *q;- int n = 0;-- p = q = s->data;- if ( !p ) return;- while ( *p ) {- if ( *p=='~' ) {- *q = ' ';- } else if ( *p=='\\' && *(p+1)=='~' ) {- n++;- p++;- *q = '~';- } else {- *q = *p;- }- p++;- q++;- }- *q = '\0';- s->len -= n;-}--static void-biblatex_process_bracket( str *s )-{- char *p, *q;- int n = 0;-- p = q = s->data;- if ( !p ) return;- while ( *p ) {- if ( *p=='\\' && ( *(p+1)=='{' || *(p+1)=='}' ) ) {- n++;- p++;- *q = *p;- q++;- } else if ( *p=='{' || *p=='}' ) {- n++;- } else {- *q = *p;- q++;- }- p++;- }- *q = '\0';- s->len -= n;-}- static int-biblatex_cleantoken( str *s )-{- /* 'textcomp' annotations */- str_findreplace( s, "\\textit", "" );- str_findreplace( s, "\\textbf", "" );- str_findreplace( s, "\\textsl", "" );- str_findreplace( s, "\\textsc", "" );- str_findreplace( s, "\\textsf", "" );- str_findreplace( s, "\\texttt", "" );- str_findreplace( s, "\\textsubscript", "" );- str_findreplace( s, "\\textsuperscript", "" );- str_findreplace( s, "\\emph", "" );- str_findreplace( s, "\\url", "" );-- /* Other text annotations */- str_findreplace( s, "\\it ", "" );- str_findreplace( s, "\\em ", "" );-- str_findreplace( s, "\\%", "%" );- str_findreplace( s, "\\$", "$" );- while ( str_findreplace( s, " ", " " ) ) {}-- /* 'textcomp' annotations that we don't want to substitute on output*/- str_findreplace( s, "\\textdollar", "$" );- str_findreplace( s, "\\textunderscore", "_" );-- biblatex_process_bracket( s );- biblatex_process_tilde( s );-- if ( !str_memerr( s ) ) return BIBL_OK;- else return BIBL_ERR_MEMERR;-}--static int-biblatex_split( slist *tokens, str *s )-{- int i, n = s->len, nbrackets = 0, status = BIBL_OK;- str tok, *t;-- str_init( &tok );-- for ( i=0; i<n; ++i ) {- if ( s->data[i]=='{' && ( i==0 || s->data[i-1]!='\\' ) ) {- nbrackets++;- str_addchar( &tok, '{' );- } else if ( s->data[i]=='}' && ( i==0 || s->data[i-1]!='\\' ) ) {- nbrackets--;- str_addchar( &tok, '}' );- } else if ( !is_ws( s->data[i] ) || nbrackets ) {- str_addchar( &tok, s->data[i] );- } else if ( is_ws( s->data[i] ) ) {- if ( str_memerr( &tok ) ) { status = BIBL_ERR_MEMERR; goto out; }- if ( str_has_value( &tok ) ) {- status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );- if ( status!=BIBL_OK ) goto out;- }- str_empty( &tok );- }- }- if ( str_has_value( &tok ) ) {- if ( str_memerr( &tok ) ) { status = BIBL_ERR_MEMERR; goto out; }- status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );- if ( status!=BIBL_OK ) goto out;- }-- for ( i=0; i<tokens->n; ++i ) {- t = slist_str( tokens, i );- str_trimstartingws( t );- str_trimendingws( t );- if ( str_memerr( t ) ) { status = BIBL_ERR_MEMERR; goto out; }- }-out:- str_free( &tok );- return status;-}--static int-biblatexin_addtitleurl( fields *info, str *in )+is_url_tag( str *tag ) {- int fstatus, status = BIBL_OK;- const char *p;- str s;-- str_init( &s );- /* skip past "\href{" */- p = str_cpytodelim( &s, in->data + 6, "}", 1 );- if ( str_memerr( &s ) ) {- status = BIBL_ERR_MEMERR;- goto out;- }- fstatus = fields_add( info, "URL", s.data, 0 );- if ( fstatus!=FIELDS_OK ) {- status = BIBL_ERR_MEMERR;- goto out;- }-- (void) str_cpytodelim( &s, p, "", 0 );- if ( str_memerr( &s ) ) {- status = BIBL_ERR_MEMERR;- goto out;+ if ( str_has_value( tag ) ) {+ if ( !strcasecmp( str_cstr( tag ), "url" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "file" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "doi" ) ) return 1; }- str_swapstrings( &s, in );-out:- str_free( &s );- return status;+ return 0; } static int@@ -654,67 +507,40 @@ } static int-is_url_tag( str *tag )+biblatexin_cleanvalue( str *tag, str *value, fields *bibin, param *p ) {- if ( str_has_value( tag ) ) {- if ( !strcasecmp( str_cstr( tag ), "url" ) ) return 1;- }- return 0;-}+ int status = BIBL_OK;+ str parsed; -static int-biblatexin_cleandata( str *tag, str *s, fields *info, param *p )-{- slist tokens;- str *tok;- int i, status = BIBL_OK;- if ( str_is_empty( s ) ) return status;+ if ( str_is_empty( value ) ) return BIBL_OK;+ /* protect url from undergoing any parsing */- if ( is_url_tag( tag ) ) return status;- slist_init( &tokens );- biblatex_split( &tokens, s );- for ( i=0; i<tokens.n; ++i ) {- if ( !strncasecmp(slist_cstr( &tokens, i ), "\\href{", 6 )) {- status = biblatexin_addtitleurl( info, slist_str( &tokens, i ) );- if ( status!=BIBL_OK ) goto out;- }- if ( p && p->latexin && !is_name_tag( tag ) ) {- status = biblatex_cleantoken( slist_str( &tokens, i ) );- if ( status!=BIBL_OK ) goto out;- }- }- str_empty( s );- for ( i=0; i<tokens.n; ++i ) {- tok = slist_str( &tokens, i );- if ( i>0 ) str_addchar( s, ' ' );- str_strcat( s, tok );- }+ if ( is_url_tag( tag ) ) return BIBL_OK;++ /* delay names from undergoing any parsing */+ if ( is_name_tag( tag ) ) return BIBL_OK;++ str_init( &parsed );++ status = latex_parse( value, &parsed );+ if ( status!=BIBL_OK ) goto out;++ str_strcpy( value, &parsed );+ if ( str_memerr( value ) ) status = BIBL_ERR_MEMERR;+ out:- slist_free( &tokens );+ str_free( &parsed ); return status; } -static long-biblatexin_findref( bibl *bin, char *citekey )-{- int n;- long i;- for ( i=0; i<bin->nrefs; ++i ) {- n = fields_find( bin->ref[i], "refnum", LEVEL_ANY );- if ( n==FIELDS_NOTFOUND ) continue;- if ( !strcmp( bin->ref[i]->data[n].data, citekey ) ) return i;- }- return -1;-}- static void biblatexin_nocrossref( bibl *bin, long i, int n, param *p ) { int n1 = fields_find( bin->ref[i], "REFNUM", LEVEL_ANY ); if ( p->progname ) fprintf( stderr, "%s: ", p->progname );- fprintf( stderr, "Cannot find cross-reference '%s'", bin->ref[i]->data[n].data);+ fprintf( stderr, "Cannot find cross-reference '%s'", (char*)fields_value( bin->ref[i], n, FIELDS_CHRP_NOUSE ) ); if ( n1!=FIELDS_NOTFOUND )- fprintf( stderr, " for reference '%s'", bin->ref[i]->data[n1].data );+ fprintf( stderr, " for reference '%s'", (char*)fields_value( bin->ref[i], n1, FIELDS_CHRP_NOUSE ) ); fprintf( stderr, "\n" ); } @@ -748,12 +574,12 @@ int n, ncross, status = BIBL_OK; fields *ref, *cross; long i;- for ( i=0; i<bin->nrefs; ++i ) {+ for ( i=0; i<bin->n; ++i ) { ref = bin->ref[i]; n = fields_find( ref, "CROSSREF", LEVEL_ANY ); if ( n==FIELDS_NOTFOUND ) continue;- fields_setused( ref, n );- ncross = biblatexin_findref(bin, (char*)fields_value(ref,n, FIELDS_CHRP_NOUSE));+ fields_set_used( ref, n );+ ncross = bibl_findref( bin, (char*) fields_value(ref,n, FIELDS_CHRP_NOUSE) ); if ( ncross==-1 ) { biblatexin_nocrossref( bin, i, n, p ); continue;@@ -774,7 +600,7 @@ for ( i=0; i<n; ++i ) { t = fields_tag( bibin, i, FIELDS_STRP_NOUSE ); d = fields_value( bibin, i, FIELDS_STRP_NOUSE );- status = biblatexin_cleandata( t, d, bibin, p );+ status = biblatexin_cleanvalue( t, d, bibin, p ); if ( status!=BIBL_OK ) return status; if ( !strsearch( str_cstr( t ), "AUTHORS" ) ) { str_findreplace( d, "\n", " " );@@ -795,7 +621,7 @@ { int status; long i;- for ( i=0; i<bin->nrefs; ++i ) {+ for ( i=0; i<bin->n; ++i ) { status = biblatexin_cleanref( bin->ref[i], p ); if ( status!=BIBL_OK ) return status; }@@ -862,7 +688,7 @@ if ( process != TITLE ) continue; if ( level != currlevel ) continue; - fields_setused( bibin, i );+ fields_set_used( bibin, i ); if ( !strcasecmp( newtag, "TITLE" ) ) { if ( str_has_value( ttl ) ) str_addchar( ttl, ' ' );@@ -930,7 +756,7 @@ goto out; } - fstatus = fields_add( info, "TITLE", combined.data, currlevel );+ fstatus = fields_add( info, "TITLE", str_cstr( &combined ), currlevel ); if ( fstatus==FIELDS_OK ) status = BIBL_ERR_MEMERR; out: str_free( &combined );@@ -1011,6 +837,7 @@ { int begin, end, ok, n, etal, i, match, status = BIBL_OK; slist tokens;+ str parsed, *s; /* If we match the asis or corps list add and bail. */ status = biblatex_matches_list( info, tag, ":ASIS", data, level, asis, &match );@@ -1019,11 +846,18 @@ if ( match==1 || status!=BIBL_OK ) return status; slist_init( &tokens );+ str_init( &parsed ); - biblatex_split( &tokens, data );- for ( i=0; i<tokens.n; ++i )- biblatex_cleantoken( slist_str( &tokens, i ) );+ status = latex_tokenize( &tokens, data );+ if ( status!=BIBL_OK ) goto out; + for ( i=0; i<tokens.n; ++i ) {+ status = latex_parse( slist_str( &tokens, i ), &parsed );+ if ( status!=BIBL_OK ) goto out;+ s = slist_set( &tokens, i, &parsed );+ if ( !s ) { status=BIBL_ERR_MEMERR; goto out; }+ }+ etal = name_findetal( &tokens ); begin = 0;@@ -1057,6 +891,7 @@ } out:+ str_free( &parsed ); slist_free( &tokens ); return status; }@@ -1125,8 +960,8 @@ neprint = fields_find( bibin, "eprint", LEVEL_ANY ); netype = fields_find( bibin, "eprinttype", LEVEL_ANY ); - if ( neprint!=FIELDS_NOTFOUND ) eprint = bibin->data[neprint].data;- if ( netype!=FIELDS_NOTFOUND ) etype = bibin->data[netype].data;+ if ( neprint!=FIELDS_NOTFOUND ) eprint = fields_value( bibin, neprint, FIELDS_CHRP );+ if ( netype!=FIELDS_NOTFOUND ) etype = fields_value( bibin, netype, FIELDS_CHRP ); if ( eprint && etype ) { if ( !strncasecmp( etype, "arxiv", 5 ) ) {@@ -1147,16 +982,16 @@ fstatus = fields_add( bibout, "EPRINTTYPE", etype, level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; }- fields_setused( bibin, neprint );- fields_setused( bibin, netype );+ fields_set_used( bibin, neprint );+ fields_set_used( bibin, netype ); } else if ( eprint ) { fstatus = fields_add( bibout, "EPRINT", eprint, level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR;- fields_setused( bibin, neprint );+ fields_set_used( bibin, neprint ); } else if ( etype ) { fstatus = fields_add( bibout, "EPRINTTYPE", etype, level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR;- fields_setused( bibin, netype );+ fields_set_used( bibin, netype ); } return BIBL_OK; }@@ -1300,7 +1135,7 @@ if ( status!=BIBL_OK ) return status; if ( convertfns[ process ] != generic_null )- fields_setused( bibin, i );+ fields_set_used( bibin, i ); }
+ bibutils/biblatexout.c view
@@ -0,0 +1,890 @@+/*+ * biblatexout.c+ *+ * Copyright (c) Chris Putnam 2003-2020+ *+ * Program and source code released under the GPL version 2+ *+ */+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include <ctype.h>+#include "str.h"+#include "strsearch.h"+#include "utf8.h"+#include "xml.h"+#include "fields.h"+#include "generic.h"+#include "name.h"+#include "title.h"+#include "type.h"+#include "url.h"+#include "bibformats.h"++/*****************************************************+ PUBLIC: int biblatexout_initparams()+*****************************************************/++static int biblatexout_write( fields *in, FILE *fp, param *p, unsigned long refnum );+static int biblatexout_assemble( fields *in, fields *out, param *pm, unsigned long refnum );++int+biblatexout_initparams( param *pm, const char *progname )+{+ pm->writeformat = BIBL_BIBLATEXOUT;+ pm->format_opts = 0;+ pm->charsetout = BIBL_CHARSET_DEFAULT;+ pm->charsetout_src = BIBL_SRC_DEFAULT;+ pm->latexout = 1;+ pm->utf8out = BIBL_CHARSET_UTF8_DEFAULT;+ pm->utf8bom = BIBL_CHARSET_BOM_DEFAULT;+ pm->xmlout = BIBL_XMLOUT_FALSE;+ pm->nosplittitle = 0;+ pm->verbose = 0;+ pm->addcount = 0;+ pm->singlerefperfile = 0;++ pm->headerf = generic_writeheader;+ pm->footerf = NULL;+ pm->assemblef = biblatexout_assemble;+ pm->writef = biblatexout_write;++ if ( !pm->progname ) {+ if ( !progname ) pm->progname = NULL;+ else {+ pm->progname = strdup( progname );+ if ( !pm->progname ) return BIBL_ERR_MEMERR;+ }+ }++ return BIBL_OK;+}++/*****************************************************+ PUBLIC: int biblatexout_assemble()+*****************************************************/++enum {+ TYPE_UNKNOWN = 0,+ TYPE_ARTICLE,+ TYPE_SUPPPERIODICAL,+ TYPE_INBOOK,+ TYPE_INPROCEEDINGS,+ TYPE_PROCEEDINGS,+ TYPE_CONFERENCE, /* legacy */+ TYPE_INCOLLECTION,+ TYPE_COLLECTION,+ TYPE_SUPPCOLLECTION,+ TYPE_REFERENCE,+ TYPE_MVREFERENCE,+ TYPE_BOOK,+ TYPE_BOOKLET,+ TYPE_SUPPBOOK,+ TYPE_PHDTHESIS, /* legacy */+ TYPE_MASTERSTHESIS, /* legacy */+ TYPE_DIPLOMATHESIS,+ TYPE_REPORT,+ TYPE_TECHREPORT,+ TYPE_MANUAL,+ TYPE_UNPUBLISHED,+ TYPE_PATENT,+ TYPE_ELECTRONIC, /* legacy */+ TYPE_ONLINE,+ TYPE_WWW, /* jurabib compatibility */+ TYPE_MISC,+ NUM_TYPES+};++static int+biblatexout_type( fields *in, const char *progname, const char *filename, unsigned long refnum )+{+ match_type genre_matches[] = {+ { "periodical", TYPE_ARTICLE, LEVEL_ANY },+ { "academic journal", TYPE_ARTICLE, LEVEL_ANY },+ { "magazine", TYPE_ARTICLE, LEVEL_ANY },+ { "newspaper", TYPE_ARTICLE, LEVEL_ANY },+ { "article", TYPE_ARTICLE, LEVEL_ANY },+ { "instruction", TYPE_MANUAL, LEVEL_ANY },+ { "book", TYPE_BOOK, LEVEL_MAIN },+ { "booklet", TYPE_BOOKLET, LEVEL_MAIN },+ { "book", TYPE_INBOOK, LEVEL_ANY },+ { "book chapter", TYPE_INBOOK, LEVEL_ANY },+ { "unpublished", TYPE_UNPUBLISHED, LEVEL_ANY },+ { "manuscript", TYPE_UNPUBLISHED, LEVEL_ANY },+ { "conference publication", TYPE_PROCEEDINGS, LEVEL_MAIN },+ { "conference publication", TYPE_INPROCEEDINGS, LEVEL_ANY },+ { "collection", TYPE_COLLECTION, LEVEL_MAIN },+ { "collection", TYPE_INCOLLECTION, LEVEL_ANY },+ { "report", TYPE_REPORT, LEVEL_ANY },+ { "technical report", TYPE_TECHREPORT, LEVEL_ANY },+ { "Masters thesis", TYPE_MASTERSTHESIS, LEVEL_ANY },+ { "Diploma thesis", TYPE_DIPLOMATHESIS, LEVEL_ANY },+ { "Ph.D. thesis", TYPE_PHDTHESIS, LEVEL_ANY },+ { "Licentiate thesis", TYPE_PHDTHESIS, LEVEL_ANY },+ { "thesis", TYPE_PHDTHESIS, LEVEL_ANY },+ { "electronic", TYPE_ELECTRONIC, LEVEL_ANY },+ { "patent", TYPE_PATENT, LEVEL_ANY },+ { "miscellaneous", TYPE_MISC, LEVEL_ANY },+ };+ int ngenre_matches = sizeof( genre_matches ) / sizeof( genre_matches[0] );++ match_type resource_matches[] = {+ { "moving image", TYPE_ELECTRONIC, LEVEL_ANY },+ { "software, multimedia", TYPE_ELECTRONIC, LEVEL_ANY },+ };+ int nresource_matches = sizeof( resource_matches ) /sizeof( resource_matches[0] );++ match_type issuance_matches[] = {+ { "monographic", TYPE_BOOK, LEVEL_MAIN },+ { "monographic", TYPE_INBOOK, LEVEL_ANY },+ };+ int nissuance_matches = sizeof( issuance_matches ) / sizeof( issuance_matches[0] );++ int type, maxlevel, n;++ type = type_from_mods_hints( in, TYPE_FROM_GENRE, genre_matches, ngenre_matches, TYPE_UNKNOWN );+ if ( type==TYPE_UNKNOWN ) type = type_from_mods_hints( in, TYPE_FROM_RESOURCE, resource_matches, nresource_matches, TYPE_UNKNOWN );+ if ( type==TYPE_UNKNOWN ) type = type_from_mods_hints( in, TYPE_FROM_ISSUANCE, issuance_matches, nissuance_matches, TYPE_UNKNOWN );++ /* default to TYPE_MISC */+ if ( type==TYPE_UNKNOWN ) {+ maxlevel = fields_maxlevel( in );+ if ( maxlevel > 0 ) type = TYPE_MISC;+ else {+ if ( progname ) fprintf( stderr, "%s: ", progname );+ fprintf( stderr, "Cannot identify TYPE in reference %lu ", refnum+1 );+ n = fields_find( in, "REFNUM", LEVEL_ANY );+ if ( n!=FIELDS_NOTFOUND ) + fprintf( stderr, " %s", (char*) fields_value( in, n, FIELDS_CHRP ) );+ fprintf( stderr, " (defaulting to @Misc)\n" );+ type = TYPE_MISC;+ }+ }+ return type;+}++static void+append_type( int type, fields *out, int *status )+{+ char *typenames[ NUM_TYPES ] = {+ [ TYPE_ARTICLE ] = "Article",+ [ TYPE_SUPPPERIODICAL ] = "SuppPeriodical",+ [ TYPE_INBOOK ] = "Inbook",+ [ TYPE_PROCEEDINGS ] = "Proceedings",+ [ TYPE_INPROCEEDINGS ] = "InProceedings",+ [ TYPE_CONFERENCE ] = "Conference",+ [ TYPE_BOOK ] = "Book",+ [ TYPE_BOOKLET ] = "Booklet",+ [ TYPE_SUPPBOOK ] = "SuppBook",+ [ TYPE_PHDTHESIS ] = "PhdThesis",+ [ TYPE_MASTERSTHESIS ] = "MastersThesis",+ [ TYPE_DIPLOMATHESIS ] = "MastersThesis",+ [ TYPE_REPORT ] = "Report",+ [ TYPE_TECHREPORT ] = "TechReport",+ [ TYPE_REFERENCE ] = "Reference",+ [ TYPE_MVREFERENCE ] = "MvReference",+ [ TYPE_MANUAL ] = "Manual",+ [ TYPE_COLLECTION ] = "Collection",+ [ TYPE_SUPPCOLLECTION ] = "SuppCollection",+ [ TYPE_INCOLLECTION ] = "InCollection",+ [ TYPE_UNPUBLISHED ] = "Unpublished",+ [ TYPE_ELECTRONIC ] = "Electronic",+ [ TYPE_ONLINE ] = "Online",+ [ TYPE_WWW ] = "WWW",+ [ TYPE_PATENT ] = "Patent",+ [ TYPE_MISC ] = "Misc",+ };+ int fstatus;+ char *s;++ if ( type < 0 || type >= NUM_TYPES ) type = TYPE_MISC;+ s = typenames[ type ];++ fstatus = fields_add( out, "TYPE", s, LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+}++static void+append_citekey( fields *in, fields *out, int format_opts, int *status )+{+ int n, fstatus;+ str s;+ char *p;++ n = fields_find( in, "REFNUM", LEVEL_ANY );+ if ( ( format_opts & BIBL_FORMAT_BIBOUT_DROPKEY ) || n==FIELDS_NOTFOUND ) {+ fstatus = fields_add( out, "REFNUM", "", LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }++ else {+ str_init( &s );+ p = fields_value( in, n, FIELDS_CHRP );+ while ( p && *p && *p!='|' ) {+ if ( format_opts & BIBL_FORMAT_BIBOUT_STRICTKEY ) {+ if ( isdigit((unsigned char)*p) || (*p>='A' && *p<='Z') ||+ (*p>='a' && *p<='z' ) ) {+ str_addchar( &s, *p );+ }+ }+ else {+ if ( *p!=' ' && *p!='\t' ) {+ str_addchar( &s, *p );+ }+ }+ p++;+ }+ if ( str_memerr( &s ) ) { *status = BIBL_ERR_MEMERR; str_free( &s ); return; }+ fstatus = fields_add( out, "REFNUM", str_cstr( &s ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ str_free( &s );+ }+}++static void+append_simple( fields *in, char *intag, char *outtag, fields *out, int *status )+{+ int n, fstatus;++ n = fields_find( in, intag, LEVEL_ANY );+ if ( n!=FIELDS_NOTFOUND ) {+ fields_set_used( in, n );+ fstatus = fields_add( out, outtag, fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+}++static void+append_simpleall( fields *in, char *intag, char *outtag, fields *out, int *status )+{+ int i, fstatus;++ for ( i=0; i<in->n; ++i ) {+ if ( fields_match_tag( in, i, intag ) ) {+ fields_set_used( in, i );+ fstatus = fields_add( out, outtag, fields_value( in, i, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }+ }+}++static void+append_keywords( fields *in, fields *out, int *status )+{+ str keywords, *word;+ vplist_index i;+ int fstatus;+ vplist a;++ str_init( &keywords );+ vplist_init( &a );++ fields_findv_each( in, LEVEL_ANY, FIELDS_STRP, &a, "KEYWORD" );++ if ( a.n ) {++ for ( i=0; i<a.n; ++i ) {+ word = vplist_get( &a, i );+ if ( i>0 ) str_strcatc( &keywords, "; " );+ str_strcat( &keywords, word );+ }++ if ( str_memerr( &keywords ) ) { *status = BIBL_ERR_MEMERR; goto out; }++ fstatus = fields_add( out, "keywords", str_cstr( &keywords ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ goto out;+ }+++ }++out:+ str_free( &keywords );+ vplist_free( &a );+}++static void+append_fileattach( fields *in, fields *out, int *status )+{+ char *tag, *value;+ int i, fstatus;+ str data;++ str_init( &data );++ for ( i=0; i<in->n; ++i ) {++ tag = fields_tag( in, i, FIELDS_CHRP );+ if ( strcasecmp( tag, "FILEATTACH" ) ) continue;++ value = fields_value( in, i, FIELDS_CHRP );+ str_strcpyc( &data, ":" );+ str_strcatc( &data, value );+ if ( strsearch( value, ".pdf" ) )+ str_strcatc( &data, ":PDF" );+ else if ( strsearch( value, ".html" ) )+ str_strcatc( &data, ":HTML" );+ else str_strcatc( &data, ":TYPE" );++ if ( str_memerr( &data ) ) {+ *status = BIBL_ERR_MEMERR;+ goto out;+ }++ fields_set_used( in, i );+ fstatus = fields_add( out, "file", str_cstr( &data ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ goto out;+ }++ str_empty( &data );+ }+out:+ str_free( &data );+}++static void+append_people( fields *in, char *tag, char *ctag, char *atag,+ char *bibtag, int level, fields *out, int format_opts, int latex_out, int *status )+{+ int i, npeople, person, corp, asis, fstatus;+ str allpeople, oneperson;++ strs_init( &allpeople, &oneperson, NULL );++ /* primary citation authors */+ npeople = 0;+ for ( i=0; i<in->n; ++i ) {+ if ( level!=LEVEL_ANY && in->level[i]!=level ) continue;+ person = ( strcasecmp( in->tag[i].data, tag ) == 0 );+ corp = ( strcasecmp( in->tag[i].data, ctag ) == 0 );+ asis = ( strcasecmp( in->tag[i].data, atag ) == 0 );+ if ( person || corp || asis ) {+ if ( npeople>0 ) {+ if ( format_opts & BIBL_FORMAT_BIBOUT_WHITESPACE )+ str_strcatc( &allpeople, "\n\t\tand " );+ else str_strcatc( &allpeople, "\nand " );+ }+ if ( corp ) {+ if ( latex_out ) str_addchar( &allpeople, '{' );+ str_strcat( &allpeople, fields_value( in, i, FIELDS_STRP ) );+ if ( latex_out ) str_addchar( &allpeople, '}' );+ } else if ( asis ) {+ if ( latex_out ) str_addchar( &allpeople, '{' );+ str_strcat( &allpeople, fields_value( in, i, FIELDS_STRP ) );+ if ( latex_out ) str_addchar( &allpeople, '}' );+ } else {+ name_build_withcomma( &oneperson, fields_value( in, i, FIELDS_CHRP ) );+ str_strcat( &allpeople, &oneperson );+ }+ npeople++;+ }+ }+ if ( npeople ) {+ fstatus = fields_add( out, bibtag, allpeople.data, LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }++ strs_free( &allpeople, &oneperson, NULL );+}++static int+append_title_chosen( fields *in, char *bibtag, fields *out, int nmainttl, int nsubttl )+{+ str fulltitle, *mainttl = NULL, *subttl = NULL;+ int status, ret = BIBL_OK;++ str_init( &fulltitle );++ if ( nmainttl!=-1 ) {+ mainttl = fields_value( in, nmainttl, FIELDS_STRP );+ fields_set_used( in, nmainttl );+ }++ if ( nsubttl!=-1 ) {+ subttl = fields_value( in, nsubttl, FIELDS_STRP );+ fields_set_used( in, nsubttl );+ }++ title_combine( &fulltitle, mainttl, subttl );++ if ( str_memerr( &fulltitle ) ) {+ ret = BIBL_ERR_MEMERR;+ goto out;+ }++ if ( str_has_value( &fulltitle ) ) {+ status = fields_add( out, bibtag, str_cstr( &fulltitle ), LEVEL_MAIN );+ if ( status!=FIELDS_OK ) ret = BIBL_ERR_MEMERR;+ }++out:+ str_free( &fulltitle );+ return ret;+}++static int+append_title( fields *in, char *bibtag, int level, fields *out, int format_opts )+{+ int title, short_title, subtitle, short_subtitle, use_title, use_subtitle;++ title = fields_find( in, "TITLE", level );+ short_title = fields_find( in, "SHORTTITLE", level );+ subtitle = fields_find( in, "SUBTITLE", level );+ short_subtitle = fields_find( in, "SHORTSUBTITLE", level );++ if ( title==FIELDS_NOTFOUND || ( ( format_opts & BIBL_FORMAT_BIBOUT_SHORTTITLE ) && level==1 ) ) {+ use_title = short_title;+ use_subtitle = short_subtitle;+ }++ else {+ use_title = title;+ use_subtitle = subtitle;+ }++ return append_title_chosen( in, bibtag, out, use_title, use_subtitle );+}++static void+append_titles( fields *in, int type, fields *out, int format_opts, int *status )+{+ /* item=main level title */+ *status = append_title( in, "title", 0, out, format_opts );+ if ( *status!=BIBL_OK ) return;++ switch( type ) {++ case TYPE_ARTICLE:+ *status = append_title( in, "journal", 1, out, format_opts );+ break;++ case TYPE_INBOOK:+ *status = append_title( in, "bookTitle", 1, out, format_opts );+ if ( *status!=BIBL_OK ) return;+ *status = append_title( in, "series", 2, out, format_opts );+ break;++ case TYPE_INCOLLECTION:+ case TYPE_INPROCEEDINGS:+ *status = append_title( in, "booktitle", 1, out, format_opts );+ if ( *status!=BIBL_OK ) return;+ *status = append_title( in, "series", 2, out, format_opts );+ break;++ case TYPE_PHDTHESIS:+ case TYPE_MASTERSTHESIS:+ *status = append_title( in, "series", 1, out, format_opts );+ break;++ case TYPE_BOOK:+ case TYPE_REPORT:+ case TYPE_COLLECTION:+ case TYPE_PROCEEDINGS:+ *status = append_title( in, "series", 1, out, format_opts );+ if ( *status!=BIBL_OK ) return;+ *status = append_title( in, "series", 2, out, format_opts );+ break;++ default:+ /* do nothing */+ break;++ }+}++static int+find_date( fields *in, char *date_element )+{+ char date[100], partdate[100];+ int n;++ sprintf( date, "DATE:%s", date_element );+ n = fields_find( in, date, LEVEL_ANY );++ if ( n==FIELDS_NOTFOUND ) {+ sprintf( partdate, "PARTDATE:%s", date_element );+ n = fields_find( in, partdate, LEVEL_ANY );+ }++ return n;+}++static void+append_date( fields *in, fields *out, int *status )+{+ char *months[12] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", + "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };+ int n, month, fstatus;++ n = find_date( in, "YEAR" );+ if ( n!=FIELDS_NOTFOUND ) {+ fields_set_used( in, n );+ fstatus = fields_add( out, "year", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }++ n = find_date( in, "MONTH" );+ if ( n!=-1 ) {+ fields_set_used( in, n );+ month = atoi( fields_value( in, n, FIELDS_CHRP ) );+ if ( month>0 && month<13 )+ fstatus = fields_add( out, "month", months[month-1], LEVEL_MAIN );+ else+ fstatus = fields_add( out, "month", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }++ n = find_date( in, "DAY" );+ if ( n!=-1 ) {+ fields_set_used( in, n );+ fstatus = fields_add( out, "day", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }++}++static void+append_arxiv( fields *in, fields *out, int *status )+{+ int n, fstatus1, fstatus2;+ str url;++ n = fields_find( in, "ARXIV", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) return;++ fields_set_used( in, n );++ /* ...write:+ * archivePrefix = "arXiv",+ * eprint = "#####",+ * ...for arXiv references+ */+ fstatus1 = fields_add( out, "archivePrefix", "arXiv", LEVEL_MAIN );+ fstatus2 = fields_add( out, "eprint", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus1!=FIELDS_OK || fstatus2!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }++ /* ...also write:+ * url = "http://arxiv.org/abs/####",+ * ...to maximize compatibility+ */+ str_init( &url );+ arxiv_to_url( in, n, "URL", &url );+ if ( str_has_value( &url ) ) {+ fstatus1 = fields_add( out, "url", str_cstr( &url ), LEVEL_MAIN );+ if ( fstatus1!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+ str_free( &url );+}++static void+append_urls( fields *in, fields *out, int *status )+{+ int lstatus;+ slist types;++ lstatus = slist_init_valuesc( &types, "URL", "DOI", "PMID", "PMC", "JSTOR", NULL );+ if ( lstatus!=SLIST_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }++ *status = urls_merge_and_add( in, LEVEL_ANY, out, "url", LEVEL_MAIN, &types );++ slist_free( &types );+}++static void+append_isi( fields *in, fields *out, int *status )+{+ int n, fstatus;++ n = fields_find( in, "ISIREFNUM", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) return;++ fstatus = fields_add( out, "note", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+}++static void+append_articlenumber( fields *in, fields *out, int *status )+{+ int n, fstatus;++ n = fields_find( in, "ARTICLENUMBER", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) return;++ fields_set_used( in, n );+ fstatus = fields_add( out, "pages", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+}++static int+pages_build_pagestr( str *pages, fields *in, int sn, int en, int format_opts )+{+ /* ...append if starting page number is defined */+ if ( sn!=-1 ) {+ str_strcat( pages, fields_value( in, sn, FIELDS_STRP ) );+ fields_set_used( in, sn );+ }++ /* ...append dashes if both starting and ending page numbers are defined */+ if ( sn!=-1 && en!=-1 ) {+ if ( format_opts & BIBL_FORMAT_BIBOUT_SINGLEDASH )+ str_strcatc( pages, "-" );+ else+ str_strcatc( pages, "--" );+ }++ /* ...append ending page number is defined */+ if ( en!=-1 ) {+ str_strcat( pages, fields_value( in, en, FIELDS_STRP ) );+ fields_set_used( in, en );+ }++ if ( str_memerr( pages ) ) return BIBL_ERR_MEMERR;+ else return BIBL_OK;+}++static int+pages_are_defined( fields *in, int *sn, int *en )+{+ *sn = fields_find( in, "PAGES:START", LEVEL_ANY );+ *en = fields_find( in, "PAGES:STOP", LEVEL_ANY );+ if ( *sn==FIELDS_NOTFOUND && *en==FIELDS_NOTFOUND ) return 0;+ else return 1;+}++static void+append_pages( fields *in, fields *out, int format_opts, int *status )+{+ int sn, en, fstatus;+ str pages;++ if ( !pages_are_defined( in, &sn, &en ) ) {+ append_articlenumber( in, out, status );+ return;+ }++ str_init( &pages );+ *status = pages_build_pagestr( &pages, in, sn, en, format_opts );+ if ( *status==BIBL_OK ) {+ fstatus = fields_add( out, "pages", str_cstr( &pages ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+ str_free( &pages );+}++/*+ * from Tim Hicks:+ * I'm no expert on bibtex, but those who know more than I on our mailing + * list suggest that 'issue' isn't a recognised key for bibtex and + * therefore that bibutils should be aliasing IS to number at some point in + * the conversion.+ *+ * Therefore prefer outputting issue/number as number and only keep+ * a distinction if both issue and number are present for a particular+ * reference.+ */++static void+append_issue_number( fields *in, fields *out, int *status )+{+ char issue[] = "issue", number[] = "number", *use_issue = number;+ int nissue = fields_find( in, "ISSUE", LEVEL_ANY );+ int nnumber = fields_find( in, "NUMBER", LEVEL_ANY );+ int fstatus;++ if ( nissue!=FIELDS_NOTFOUND && nnumber!=FIELDS_NOTFOUND ) use_issue = issue;++ if ( nissue!=FIELDS_NOTFOUND ) {+ fields_set_used( in, nissue );+ fstatus = fields_add( out, use_issue, fields_value( in, nissue, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }++ if ( nnumber!=FIELDS_NOTFOUND ) {+ fields_set_used( in, nnumber );+ fstatus = fields_add( out, "number", fields_value( in, nnumber, FIELDS_CHRP ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ *status = BIBL_ERR_MEMERR;+ return;+ }+ }+}++static void+append_howpublished( fields *in, fields *out, int *status )+{+ int n, fstatus;+ char *d;++ n = fields_find( in, "GENRE:BIBUTILS", LEVEL_ANY );+ if ( n==FIELDS_NOTFOUND ) return;++ d = fields_value( in, n, FIELDS_CHRP_NOUSE );+ if ( !strcmp( d, "Habilitation thesis" ) ) {+ fstatus = fields_add( out, "howpublised", d, LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+ if ( !strcmp( d, "Licentiate thesis" ) ) {+ fstatus = fields_add( out, "howpublised", d, LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+ if ( !strcmp( d, "Diploma thesis" ) ) {+ fstatus = fields_add( out, "howpublised", d, LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;+ }+}++static int+biblatexout_assemble( fields *in, fields *out, param *pm, unsigned long refnum )+{+ int type, status = BIBL_OK;++ type = biblatexout_type( in, pm->progname, "", refnum );++ append_type ( type, out, &status );+ append_citekey ( in, out, pm->format_opts, &status );+ append_people ( in, "AUTHOR", "AUTHOR:CORP", "AUTHOR:ASIS", "author", LEVEL_MAIN, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "AUTHOR", "AUTHOR:CORP", "AUTHOR:ASIS", "bookauthor", LEVEL_HOST, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "EDITOR", "EDITOR:CORP", "EDITOR:ASIS", "editor", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "ANNOTATOR", "ANNOTATOR:CORP", "ANNOTATOR:ASIS", "annotator", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "TRANSLATOR", "TRANSLATOR:CORP", "TRANSLATOR:ASIS", "translator", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "REDACTOR", "REDACTOR:CORP", "REDACTOR:ASIS", "redactor", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "COMMENTATOR","COMMENTATOR:CORP","COMMENTATOR:ASIS","commentator", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "INTROAUTHOR","INTROAUTHOR:CORP","INTROAUTHOR:ASIS","introduction", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "AFTERAUTHOR","AFTERAUTHOR:CORP","AFTERAUTHOR:ASIS","afterword", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_titles ( in, type, out, pm->format_opts, &status );+ append_simple ( in, "SHORTTITLE", "shorttitle", out, &status );+ append_date ( in, out, &status );+ append_simple ( in, "EDITION", "edition", out, &status );+ append_simple ( in, "PUBLISHER", "publisher", out, &status );+ append_simple ( in, "ADDRESS", "address", out, &status );+ append_simple ( in, "EDITION", "version", out, &status );+ append_simple ( in, "PART", "part", out, &status );+ append_simple ( in, "VOLUME", "volume", out, &status );+ append_issue_number( in, out, &status );+ append_pages ( in, out, pm->format_opts, &status );+ append_keywords ( in, out, &status );+ append_simple ( in, "LANGCATALOG", "hyphenation", out, &status );+ append_simple ( in, "CONTENTS", "contents", out, &status );+ append_simple ( in, "ABSTRACT", "abstract", out, &status );+ append_simple ( in, "LOCATION", "location", out, &status );+ append_simple ( in, "DEGREEGRANTOR", "school", out, &status );+ append_simple ( in, "DEGREEGRANTOR:ASIS", "school", out, &status );+ append_simple ( in, "DEGREEGRANTOR:CORP", "school", out, &status );+ append_simpleall ( in, "NOTES", "note", out, &status );+ append_simpleall ( in, "ANNOTE", "annote", out, &status );+ append_simpleall ( in, "ANNOTATION", "annotation", out, &status );+ append_simple ( in, "ISBN", "isbn", out, &status );+ append_simple ( in, "ISSN", "issn", out, &status );+ append_simple ( in, "MRNUMBER", "mrnumber", out, &status );+ append_simple ( in, "CODEN", "coden", out, &status );+ append_simple ( in, "DOI", "doi", out, &status );+ append_simple ( in, "EID", "eid", out, &status );+ append_urls ( in, out, &status );+ append_fileattach ( in, out, &status );+ append_arxiv ( in, out, &status );+ append_simple ( in, "EPRINTCLASS", "primaryClass", out, &status );+ append_isi ( in, out, &status );+ append_simple ( in, "LANGUAGE", "language", out, &status );+ append_howpublished( in, out, &status );++ return status;+}++/*****************************************************+ PUBLIC: int biblatexout_write()+*****************************************************/++static int+biblatexout_write( fields *out, FILE *fp, param *pm, unsigned long refnum )+{+ int i, j, len, nquotes, format_opts = pm->format_opts;+ char *tag, *value, ch;++ /* ...output type information "@article{" */+ value = ( char * ) fields_value( out, 0, FIELDS_CHRP );+ if ( !(format_opts & BIBL_FORMAT_BIBOUT_UPPERCASE) ) fprintf( fp, "@%s{", value );+ else {+ len = (value) ? strlen( value ) : 0;+ fprintf( fp, "@" );+ for ( i=0; i<len; ++i )+ fprintf( fp, "%c", toupper((unsigned char)value[i]) );+ fprintf( fp, "{" );+ }++ /* ...output refnum "Smith2001" */+ value = ( char * ) fields_value( out, 1, FIELDS_CHRP );+ fprintf( fp, "%s", value );++ /* ...rest of the references */+ for ( j=2; j<out->n; ++j ) {+ nquotes = 0;+ tag = ( char * ) fields_tag( out, j, FIELDS_CHRP );+ value = ( char * ) fields_value( out, j, FIELDS_CHRP );+ fprintf( fp, ",\n" );+ if ( format_opts & BIBL_FORMAT_BIBOUT_WHITESPACE ) fprintf( fp, " " );+ if ( !(format_opts & BIBL_FORMAT_BIBOUT_UPPERCASE ) ) fprintf( fp, "%s", tag );+ else {+ len = strlen( tag );+ for ( i=0; i<len; ++i )+ fprintf( fp, "%c", toupper((unsigned char)tag[i]) );+ }+ if ( format_opts & BIBL_FORMAT_BIBOUT_WHITESPACE ) fprintf( fp, " = \t" );+ else fprintf( fp, "=" );++ if ( format_opts & BIBL_FORMAT_BIBOUT_BRACKETS ) fprintf( fp, "{" );+ else fprintf( fp, "\"" );++ len = strlen( value );+ for ( i=0; i<len; ++i ) {+ ch = value[i];+ if ( ch!='\"' ) fprintf( fp, "%c", ch );+ else {+ if ( format_opts & BIBL_FORMAT_BIBOUT_BRACKETS || ( i>0 && value[i-1]=='\\' ) )+ fprintf( fp, "\"" );+ else {+ if ( nquotes % 2 == 0 )+ fprintf( fp, "``" );+ else fprintf( fp, "\'\'" );+ nquotes++;+ }+ }+ }++ if ( format_opts & BIBL_FORMAT_BIBOUT_BRACKETS ) fprintf( fp, "}" );+ else fprintf( fp, "\"" );+ }++ /* ...finish reference */+ if ( format_opts & BIBL_FORMAT_BIBOUT_FINALCOMMA ) fprintf( fp, "," );+ fprintf( fp, "\n}\n\n" );++ fflush( fp );++ return BIBL_OK;+}
bibutils/bibtexin.c view
@@ -1,7 +1,7 @@ /* * bibtexin.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Program and source code released under the GPL version 2 *@@ -11,6 +11,7 @@ #include <string.h> #include <ctype.h> #include "is_ws.h"+#include "intlist.h" #include "str.h" #include "utf8.h" #include "str_conv.h"@@ -20,6 +21,7 @@ #include "title.h" #include "url.h" #include "reftypes.h"+#include "latex_parse.h" #include "bibformats.h" #include "generic.h" @@ -651,243 +653,225 @@ *****************************************************/ static int-bibtex_protected( str *data )+is_url_tag( str *tag ) {- if ( data->data[0]=='{' && data->data[data->len-1]=='}' ) return 1;- if ( data->data[0]=='\"' && data->data[data->len-1]=='\"' ) return 1;+ if ( str_has_value( tag ) ) {+ if ( !strcasecmp( str_cstr( tag ), "url" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "file" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "doi" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "sentelink" ) ) return 1;+ } return 0; } static int-bibtex_split( slist *tokens, str *s )+is_name_tag( str *tag ) {- int i, n = s->len, nbrackets = 0, status = BIBL_OK;- str tok;-- str_init( &tok );-- for ( i=0; i<n; ++i ) {- if ( s->data[i]=='{' && ( i==0 || s->data[i-1]!='\\' ) ) {- nbrackets++;- str_addchar( &tok, '{' );- } else if ( s->data[i]=='}' && ( i==0 || s->data[i-1]!='\\' ) ) {- nbrackets--;- str_addchar( &tok, '}' );- } else if ( !is_ws( s->data[i] ) || nbrackets ) {- str_addchar( &tok, s->data[i] );- } else if ( is_ws( s->data[i] ) ) {- if ( str_has_value( &tok ) ) {- status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );- if ( status!=BIBL_OK ) goto out;- }- str_empty( &tok );- }- }- if ( str_has_value( &tok ) ) {- status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );- if ( status!=BIBL_OK ) goto out;- }-- for ( i=0; i<tokens->n; ++i ) {- str_trimstartingws( slist_str( tokens, i ) );- str_trimendingws( slist_str( tokens, i ) );+ if ( str_has_value( tag ) ) {+ if ( !strcasecmp( str_cstr( tag ), "author" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "editor" ) ) return 1;+ if ( !strcasecmp( str_cstr( tag ), "translator" ) ) return 1; }-out:- str_free( &tok );- return status;+ return 0; } static int-bibtex_addtitleurl( fields *info, str *in )+bibtex_cleanvalue( str *value ) {- int fstatus, status = BIBL_OK;- const char *p;- str s;-- str_init( &s );+ int status;+ str parsed; - /* ...skip past "\href{" and copy to "}" */- p = str_cpytodelim( &s, in->data + 6, "}", 1 );- if ( str_memerr( &s ) ) { status = BIBL_ERR_MEMERR; goto out; }+ str_init( &parsed ); - /* ...add to URL */- fstatus = fields_add( info, "URL", s.data, 0 );- if ( fstatus!=FIELDS_OK ) { status = BIBL_ERR_MEMERR; goto out; }+ status = latex_parse( value, &parsed );+ if ( status!=BIBL_OK ) goto out; - /* ...return deleted fragment to str in */- (void) str_cpytodelim( &s, p, "", 0 );- if ( str_memerr( &s ) ) { status = BIBL_ERR_MEMERR; goto out; }- str_swapstrings( &s, in );+ str_strcpy( value, &parsed );+ if ( str_memerr( value ) ) status = BIBL_ERR_MEMERR; out:- str_free( &s );+ str_free( &parsed ); return status; } static int-is_url_tag( str *tag )+bibtex_matches_list( fields *bibout, char *tag, char *suffix, str *data, int level, slist *names, int *match ) {- if ( str_has_value( tag ) ) {- if ( !strcasecmp( str_cstr( tag ), "url" ) ) return 1;+ int n, fstatus;+ str mergedtag;++ *match = 0;++ n = slist_find( names, data );+ if ( slist_wasfound( names, n ) ) {+ str_initstrsc( &mergedtag, tag, suffix, NULL );+ fstatus = fields_add( bibout, str_cstr( &mergedtag ), str_cstr( data ), level );+ str_free( &mergedtag );+ if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR;+ *match = 1; }- return 0;++ return BIBL_OK; } static int-is_name_tag( str *tag )+bibtex_matches_asis_or_corps( fields *bibin, int m, param *pm, int *match ) {- if ( str_has_value( tag ) ) {- if ( !strcasecmp( str_cstr( tag ), "author" ) ) return 1;- if ( !strcasecmp( str_cstr( tag ), "editor" ) ) return 1;- }- return 0;+ int status;++ status = bibtex_matches_list( bibin, fields_tag( bibin, m, FIELDS_STRP ), ":ASIS", fields_value( bibin, m, FIELDS_STRP ), LEVEL_MAIN, &(pm->asis), match );+ if ( *match==1 || status!=BIBL_OK ) return status;++ status = bibtex_matches_list( bibin, fields_tag( bibin, m, FIELDS_STRP ), ":CORP", fields_value( bibin, m, FIELDS_STRP ), LEVEL_MAIN, &(pm->corps), match );+ if ( *match==1 || status!=BIBL_OK ) return status;++ return BIBL_OK; } -static void-bibtex_process_tilde( str *s )+/* We need to:+ * (1) break names into LaTeX tokens (e.g. respect "{van der Hoff}" as a single name element)+ * (2) clean the values by removing brackets and things+ * (3) convert the character set before any name processing happens (else things like "\"O" get split up)+ */+static int+bibtex_person_tokenize( fields *bibin, int m, param *pm, slist *tokens ) {- const char *p;- char *q;- int n = 0;+ int i, ok, status;+ str *s; - p = s->data;- q = s->data;- if ( !p ) return;- while ( *p ) {- if ( *p=='~' ) {- *q = ' ';- } else if ( *p=='\\' && *(p+1)=='~' ) {- n++;- p++;- *q = '~';- } else {- *q = *p;- }- p++;- q++;+ status = latex_tokenize( tokens, fields_value( bibin, m, FIELDS_STRP ) );+ if ( status!=BIBL_OK ) return status;++ for ( i=0; i<tokens->n; ++i ) {++ s = slist_str( tokens, i );++ status = bibtex_cleanvalue( s );+ if ( status!=BIBL_OK ) return status;++ ok = str_convert( s, pm->charsetin, 1, pm->utf8in, pm->xmlin,+ pm->charsetout, 0, pm->utf8out, pm->xmlout );+ if ( !ok ) return BIBL_ERR_MEMERR;+ }- *q = '\0';- s->len -= n;++ return BIBL_OK; } -static void-bibtex_process_bracket( str *s )+/* We need to:+ * (1) Build individual names+ * (2) Add them to the end of fields *bibin -- because of this, we have to look up the tag/data every time+ * because we can reallocate the raw data and make any pointers stale+ */+static int+bibtex_person_add_names( fields *bibin, int m, slist *tokens ) {- char *p, *q;- int n = 0;+ int begin, end, ok, n, etal; - p = q = s->data;- if ( !p ) return;- while ( *p ) {- if ( *p=='\\' && ( *(p+1)=='{' || *(p+1)=='}' ) ) {- n++;- p++;- *q = *p;- q++;- } else if ( *p=='{' || *p=='}' ) {- n++;+ etal = name_findetal( tokens );++ begin = 0;+ n = tokens->n - etal;+ while ( begin < n ) {++ end = begin + 1;++ while ( end < n && strcasecmp( slist_cstr( tokens, end ), "and" ) )+ end++;+++ if ( end - begin == 1 ) {+ ok = name_addsingleelement( bibin, fields_tag( bibin,m,FIELDS_CHRP), slist_cstr( tokens, begin ), LEVEL_MAIN, NAME_ASIS );+ if ( !ok ) return BIBL_ERR_MEMERR; } else {- *q = *p;- q++;+ ok = name_addmultielement( bibin, fields_tag(bibin,m,FIELDS_CHRP), tokens, begin, end, LEVEL_MAIN );+ if ( !ok ) return BIBL_ERR_MEMERR; }- p++;- }- *q = '\0';- s->len -= n;-} -static void-bibtex_cleantoken( str *s )-{- /* 'textcomp' annotations */- str_findreplace( s, "\\textit", "" );- str_findreplace( s, "\\textbf", "" );- str_findreplace( s, "\\textsl", "" );- str_findreplace( s, "\\textsc", "" );- str_findreplace( s, "\\textsf", "" );- str_findreplace( s, "\\texttt", "" );- str_findreplace( s, "\\textsubscript", "" );- str_findreplace( s, "\\textsuperscript", "" );- str_findreplace( s, "\\emph", "" );- str_findreplace( s, "\\url", "" );- str_findreplace( s, "\\mbox", "" );-- /* Other text annotations */- str_findreplace( s, "\\it ", "" );- str_findreplace( s, "\\em ", "" );+ begin = end + 1; - str_findreplace( s, "\\%", "%" );- str_findreplace( s, "\\$", "$" );- while ( str_findreplace( s, " ", " " ) ) {}+ /* Handle repeated 'and' errors: authors="G. F. Author and and B. K. Author" */+ while ( begin < n && !strcasecmp( slist_cstr( tokens, begin ), "and" ) )+ begin++; - /* 'textcomp' annotations that we don't want to substitute on output*/- str_findreplace( s, "\\textdollar", "$" );- str_findreplace( s, "\\textunderscore", "_" );+ } - bibtex_process_bracket( s );- bibtex_process_tilde( s );+ if ( etal ) {+ ok = name_addsingleelement( bibin, fields_tag(bibin,m,FIELDS_CHRP), "et al.", LEVEL_MAIN, NAME_ASIS );+ if ( !ok ) return BIBL_ERR_MEMERR;+ } + return BIBL_OK; } +/* Keep looking up tag values--we can reallocate when we add new names here */ static int-bibtex_cleandata( str *tag, str *s, fields *info, param *p )+bibtexin_person( fields *bibin, int m, param *pm ) {- int i, status;+ int status, match = 0; slist tokens;- str *tok;- if ( str_is_empty( s ) ) return BIBL_OK;- /* protect url from undergoing any parsing */- if ( is_url_tag( tag ) ) return BIBL_OK;++ status = bibtex_matches_asis_or_corps( bibin, m, pm, &match );+ if ( status!=BIBL_OK || match==1 ) return status;+ slist_init( &tokens );- status = bibtex_split( &tokens, s );++ status = bibtex_person_tokenize( bibin, m, pm, &tokens ); if ( status!=BIBL_OK ) goto out;- for ( i=0; i<tokens.n; ++i ) {- tok = slist_str( &tokens, i );- if ( bibtex_protected( tok ) ) {- if (!strncasecmp(tok->data,"\\href{", 6)) {- bibtex_addtitleurl( info, tok );- }- }- if ( p->latexin && !is_name_tag( tag ) && !is_url_tag( tag ) )- bibtex_cleantoken( tok );- }- str_empty( s );- for ( i=0; i<tokens.n; ++i ) {- tok = slist_str( &tokens, i );- if ( i>0 ) str_addchar( s, ' ' );- str_strcat( s, tok );- }++ status = bibtex_person_add_names( bibin, m, &tokens );+ if ( status!=BIBL_OK ) goto out;+ out: slist_free( &tokens ); return status;+ } static int-bibtexin_cleanref( fields *bibin, param *p )+bibtexin_cleanref( fields *bibin, param *pm ) {- int i, n, status;- str *t, *d;+ int i, n, fstatus, status = BIBL_OK;+ str *tag, *value;+ intlist toremove;++ intlist_init( &toremove );+ n = fields_num( bibin );+ for ( i=0; i<n; ++i ) {- t = fields_tag( bibin, i, FIELDS_STRP_NOUSE );- d = fields_value( bibin, i, FIELDS_STRP_NOUSE );- status = bibtex_cleandata( t, d, bibin, p );- if ( status!=BIBL_OK ) return status;++ tag = fields_tag( bibin, i, FIELDS_STRP_NOUSE );+ if ( is_url_tag( tag ) ) continue; /* protect url from parsing */++ value = fields_value( bibin, i, FIELDS_STRP_NOUSE );+ if ( str_is_empty( value ) ) continue;++ if ( is_name_tag( tag ) ) {+ status = bibtexin_person( bibin, i, pm );+ if ( status!=BIBL_OK ) goto out;++ fstatus = intlist_add( &toremove, i );+ if ( fstatus!=INTLIST_OK ) { status = BIBL_ERR_MEMERR; goto out; }+ }++ else {+ status = bibtex_cleanvalue( value );+ if ( status!=BIBL_OK ) goto out;+ }+ }- return BIBL_OK;-} -static long-bibtexin_findref( bibl *bin, char *citekey )-{- int n;- long i;- for ( i=0; i<bin->nrefs; ++i ) {- n = fields_find( bin->ref[i], "refnum", LEVEL_ANY );- if ( n==FIELDS_NOTFOUND ) continue;- if ( !strcmp( bin->ref[i]->data[n].data, citekey ) ) return i;+ for ( i=toremove.n-1; i>=0; i-- ) {+ fstatus = fields_remove( bibin, intlist_get( &toremove, i ) );+ if ( fstatus!=FIELDS_OK ) { status = BIBL_ERR_MEMERR; goto out; } }- return -1;++out:++ intlist_free( &toremove );++ return status; } static void@@ -895,42 +879,42 @@ { int n1 = fields_find( bin->ref[i], "REFNUM", LEVEL_ANY ); if ( p->progname ) fprintf( stderr, "%s: ", p->progname );- fprintf( stderr, "Cannot find cross-reference '%s'",- bin->ref[i]->data[n].data );- if ( n1!=FIELDS_NOTFOUND ) fprintf( stderr, " for reference '%s'\n",- bin->ref[i]->data[n1].data );+ fprintf( stderr, "Cannot find cross-reference '%s'", (char*) fields_value( bin->ref[i], n, FIELDS_CHRP_NOUSE ) );+ if ( n1!=FIELDS_NOTFOUND ) fprintf( stderr, " for reference '%s'\n", (char*) fields_value( bin->ref[i], n1, FIELDS_CHRP_NOUSE ) ); fprintf( stderr, "\n" ); } static int bibtexin_crossref_oneref( fields *bibref, fields *bibcross ) {- int j, n, nl, ntype, fstatus, status = BIBL_OK;- char *type, *nt, *nv;+ int i, n, newlevel, ntype, fstatus;+ char *type, *newtag, *newvalue; ntype = fields_find( bibref, "INTERNAL_TYPE", LEVEL_ANY ); type = ( char * ) fields_value( bibref, ntype, FIELDS_CHRP_NOUSE ); n = fields_num( bibcross );- for ( j=0; j<n; ++j ) {- nt = ( char * ) fields_tag( bibcross, j, FIELDS_CHRP_NOUSE );- if ( !strcasecmp( nt, "INTERNAL_TYPE" ) ) continue;- if ( !strcasecmp( nt, "REFNUM" ) ) continue;- if ( !strcasecmp( nt, "TITLE" ) ) {++ for ( i=0; i<n; ++i ) {++ newtag = ( char * ) fields_tag( bibcross, i, FIELDS_CHRP_NOUSE );+ if ( !strcasecmp( newtag, "INTERNAL_TYPE" ) ) continue;+ if ( !strcasecmp( newtag, "REFNUM" ) ) continue;+ if ( !strcasecmp( newtag, "TITLE" ) ) { if ( !strcasecmp( type, "Inproceedings" ) || !strcasecmp( type, "Incollection" ) )- nt = "booktitle";- }- nv = ( char * ) fields_value( bibcross, j, FIELDS_CHRP_NOUSE );- nl = fields_level( bibcross, j ) + 1;- fstatus = fields_add( bibref, nt, nv, nl );- if ( fstatus!=FIELDS_OK ) {- status = BIBL_ERR_MEMERR;- goto out;+ newtag = "booktitle"; }++ newvalue = ( char * ) fields_value( bibcross, i, FIELDS_CHRP_NOUSE );++ newlevel = fields_level( bibcross, i ) + 1;++ fstatus = fields_add( bibref, newtag, newvalue, newlevel );+ if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; }-out:- return status;++ return BIBL_OK; } static int@@ -939,12 +923,12 @@ int i, n, ncross, status = BIBL_OK; fields *bibref, *bibcross; - for ( i=0; i<bin->nrefs; ++i ) {+ for ( i=0; i<bin->n; ++i ) { bibref = bin->ref[i]; n = fields_find( bibref, "CROSSREF", LEVEL_ANY ); if ( n==FIELDS_NOTFOUND ) continue;- fields_setused( bibref, n );- ncross = bibtexin_findref( bin, (char*) fields_value( bibref, n, FIELDS_CHRP ) );+ fields_set_used( bibref, n );+ ncross = bibl_findref( bin, (char*) fields_value( bibref, n, FIELDS_CHRP_NOUSE ) ); if ( ncross==-1 ) { bibtexin_nocrossref( bin, i, n, p ); continue;@@ -960,12 +944,14 @@ static int bibtexin_cleanf( bibl *bin, param *p ) {- int status = BIBL_OK;+ int status; long i; - for ( i=0; i<bin->nrefs; ++i )+ for ( i=0; i<bin->n; ++i ) { status = bibtexin_cleanref( bin->ref[i], p );- bibtexin_crossref( bin, p );+ if ( status!=BIBL_OK ) return status;+ }+ status = bibtexin_crossref( bin, p ); return status; } @@ -991,36 +977,6 @@ PUBLIC: int bibtexin_convertf(), returns BIBL_OK or BIBL_ERR_MEMERR *****************************************************/ -static int-bibtex_matches_list( fields *bibout, char *tag, char *suffix, str *data, int level,- slist *names, int *match )-{- int i, fstatus, status = BIBL_OK;- str newtag;-- *match = 0;- if ( names->n==0 ) return status;-- str_init( &newtag );-- for ( i=0; i<names->n; ++i ) {- if ( strcmp( str_cstr( data ), slist_cstr( names, i ) ) ) continue;- str_initstrc( &newtag, tag );- str_strcatc( &newtag, suffix );- fstatus = fields_add( bibout, str_cstr( &newtag ), str_cstr( data ), level );- if ( fstatus!=FIELDS_OK ) {- status = BIBL_ERR_MEMERR;- goto out;- }- *match = 1;- goto out;- }--out:- str_free( &newtag );- return status;-}- /**** bibtexin_btorg ****/ /*@@ -1111,7 +1067,7 @@ bibtexin_linkedfile( fields *bibin, int m, str *intag, str *invalue, int level, param *pm, char *outtag, fields *bibout ) { int fstatus, status = BIBL_OK;- char *p = invalue->data;+ char *p = str_cstr( invalue ); int i, n, n1, n2; str link; @@ -1132,7 +1088,7 @@ goto out; } if ( link.len ) {- fstatus = fields_add( bibout, "FILEATTACH", link.data, level );+ fstatus = fields_add( bibout, "FILEATTACH", str_cstr( &link ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } out:@@ -1211,30 +1167,30 @@ str merge; if ( !strcmp( prefix, "arXiv" ) ) {- fstatus = fields_add( bibout, "ARXIV", value->data, level );+ fstatus = fields_add( bibout, "ARXIV", str_cstr( value ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } else if ( !strcmp( prefix, "jstor" ) ) {- fstatus = fields_add( bibout, "JSTOR", value->data, level );+ fstatus = fields_add( bibout, "JSTOR", str_cstr( value ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } else if ( !strcmp( prefix, "medline" ) ) {- fstatus = fields_add( bibout, "MEDLINE", value->data, level );+ fstatus = fields_add( bibout, "MEDLINE", str_cstr( value ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } else if ( !strcmp( prefix, "pubmed" ) ) {- fstatus = fields_add( bibout, "PMID", value->data, level );+ fstatus = fields_add( bibout, "PMID", str_cstr( value ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } /* ...if this is unknown prefix, merge prefix & eprint */ else { str_init( &merge );- str_mergestrs( &merge, prefix, ":", value->data, NULL );- fstatus = fields_add( bibout, "URL", merge.data, level );+ str_mergestrs( &merge, prefix, ":", str_cstr( value ), NULL );+ fstatus = fields_add( bibout, "URL", str_cstr( &merge ), level ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; str_free( &merge ); }@@ -1247,7 +1203,7 @@ int fstatus; /* ...no archivePrefix, need to handle just 'eprint' tag */- fstatus = fields_add( bibout, "URL", value->data, level );+ fstatus = fields_add( bibout, "URL", str_cstr( value ), level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; else return BIBL_OK;@@ -1287,7 +1243,7 @@ const char *p; str keyword; - p = invalue->data;+ p = str_cstr( invalue ); str_init( &keyword ); while ( *p ) {@@ -1298,7 +1254,7 @@ goto out; } if ( keyword.len ) {- fstatus = fields_add( bibout, "KEYWORD", keyword.data, level );+ fstatus = fields_add( bibout, "KEYWORD", str_cstr( &keyword ), level ); if ( fstatus!=FIELDS_OK ) { status = BIBL_ERR_MEMERR; goto out;@@ -1310,70 +1266,6 @@ return status; } -/*- * bibtex_names( bibout, newtag, field, level);- *- * split names in author list separated by and's (use '|' character)- * and add names- *- * returns BIBL_OK on success, BIBL_ERR_MEMERR on memory error- */--static int-bibtexin_person( fields *bibin, int m, str *intag, str *invalue, int level, param *pm, char *outtag, fields *bibout )-{- int begin, end, ok, n, etal, i, status, match;- slist tokens;-- /* If we match the asis or corps list add and bail. */- status = bibtex_matches_list( bibout, outtag, ":ASIS", invalue, level, &(pm->asis), &match );- if ( match==1 || status!=BIBL_OK ) return status;- status = bibtex_matches_list( bibout, outtag, ":CORP", invalue, level, &(pm->corps), &match );- if ( match==1 || status!=BIBL_OK ) return status;-- slist_init( &tokens );-- bibtex_split( &tokens, invalue );- for ( i=0; i<tokens.n; ++i )- bibtex_cleantoken( slist_str( &tokens, i ) );-- etal = name_findetal( &tokens );-- begin = 0;- n = tokens.n - etal;- while ( begin < n ) {-- end = begin + 1;-- while ( end < n && strcasecmp( slist_cstr( &tokens, end ), "and" ) )- end++;-- if ( end - begin == 1 ) {- ok = name_addsingleelement( bibout, outtag, slist_cstr( &tokens, begin ), level, 0 );- if ( !ok ) { status = BIBL_ERR_MEMERR; goto out; }- } else {- ok = name_addmultielement( bibout, outtag, &tokens, begin, end, level );- if ( !ok ) { status = BIBL_ERR_MEMERR; goto out; }- }-- begin = end + 1;-- /* Handle repeated 'and' errors: authors="G. F. Author and and B. K. Author" */- while ( begin < n && !strcasecmp( slist_cstr( &tokens, begin ), "and" ) )- begin++;- }-- if ( etal ) {- ok = name_addsingleelement( bibout, outtag, "et al.", level, 0 );- if ( !ok ) status = BIBL_ERR_MEMERR;- }--out:- slist_free( &tokens );- return status;--}- /**** bibtexin_title() ****/ /* bibtexin_titleinbook_isbooktitle()@@ -1448,7 +1340,7 @@ [ 0 ... NUM_REFTYPES-1 ] = generic_null, [ SIMPLE ] = generic_simple, [ TITLE ] = bibtexin_title,- [ PERSON ] = bibtexin_person,+ [ PERSON ] = generic_simple, [ PAGES ] = generic_pages, [ KEYWORD ] = bibtexin_keyword, [ EPRINT ] = bibtexin_eprint,@@ -1469,8 +1361,8 @@ for ( i=0; i<nfields; ++i ) { if ( fields_used( bibin, i ) ) continue; /* e.g. successful crossref */- if ( fields_notag( bibin, i ) ) continue;- if ( fields_nodata( bibin, i ) ) continue;+ if ( fields_no_tag( bibin, i ) ) continue;+ if ( fields_no_value( bibin, i ) ) continue; intag = fields_tag( bibin, i, FIELDS_STRP ); invalue = fields_value( bibin, i, FIELDS_STRP );
bibutils/bibtexout.c view
@@ -1,7 +1,7 @@ /* * bibtexout.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Program and source code released under the GPL version 2 *@@ -225,7 +225,7 @@ n = fields_find( in, intag, LEVEL_ANY ); if ( n!=FIELDS_NOTFOUND ) {- fields_setused( in, n );+ fields_set_used( in, n ); fstatus = fields_add( out, outtag, fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR; }@@ -238,7 +238,7 @@ for ( i=0; i<in->n; ++i ) { if ( fields_match_tag( in, i, intag ) ) {- fields_setused( in, i );+ fields_set_used( in, i ); fstatus = fields_add( out, outtag, fields_value( in, i, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR;@@ -313,7 +313,7 @@ goto out; } - fields_setused( in, i );+ fields_set_used( in, i ); fstatus = fields_add( out, "file", str_cstr( &data ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR;@@ -328,7 +328,7 @@ static void append_people( fields *in, char *tag, char *ctag, char *atag,- char *bibtag, int level, fields *out, int format_opts, int *status )+ char *bibtag, int level, fields *out, int format_opts, int latex_out, int *status ) { int i, npeople, person, corp, asis, fstatus; str allpeople, oneperson;@@ -349,13 +349,13 @@ else str_strcatc( &allpeople, "\nand " ); } if ( corp ) {- str_addchar( &allpeople, '{' );+ if ( latex_out ) str_addchar( &allpeople, '{' ); str_strcat( &allpeople, fields_value( in, i, FIELDS_STRP ) );- str_addchar( &allpeople, '}' );+ if ( latex_out ) str_addchar( &allpeople, '}' ); } else if ( asis ) {- str_addchar( &allpeople, '{' );+ if ( latex_out ) str_addchar( &allpeople, '{' ); str_strcat( &allpeople, fields_value( in, i, FIELDS_STRP ) );- str_addchar( &allpeople, '}' );+ if ( latex_out ) str_addchar( &allpeople, '}' ); } else { name_build_withcomma( &oneperson, fields_value( in, i, FIELDS_CHRP ) ); str_strcat( &allpeople, &oneperson );@@ -381,12 +381,12 @@ if ( nmainttl!=-1 ) { mainttl = fields_value( in, nmainttl, FIELDS_STRP );- fields_setused( in, nmainttl );+ fields_set_used( in, nmainttl ); } if ( nsubttl!=-1 ) { subttl = fields_value( in, nsubttl, FIELDS_STRP );- fields_setused( in, nsubttl );+ fields_set_used( in, nsubttl ); } title_combine( &fulltitle, mainttl, subttl );@@ -502,8 +502,8 @@ n = find_date( in, "YEAR" ); if ( n!=FIELDS_NOTFOUND ) {- fields_setused( in, n );- fstatus = fields_add( out, "year", in->data[n].data, LEVEL_MAIN );+ fields_set_used( in, n );+ fstatus = fields_add( out, "year", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR; return;@@ -512,12 +512,12 @@ n = find_date( in, "MONTH" ); if ( n!=-1 ) {- fields_setused( in, n );- month = atoi( in->data[n].data );+ fields_set_used( in, n );+ month = atoi( fields_value( in, n, FIELDS_CHRP ) ); if ( month>0 && month<13 ) fstatus = fields_add( out, "month", months[month-1], LEVEL_MAIN ); else- fstatus = fields_add( out, "month", in->data[n].data, LEVEL_MAIN );+ fstatus = fields_add( out, "month", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR; return;@@ -526,8 +526,8 @@ n = find_date( in, "DAY" ); if ( n!=-1 ) {- fields_setused( in, n );- fstatus = fields_add( out, "day", in->data[n].data, LEVEL_MAIN );+ fields_set_used( in, n );+ fstatus = fields_add( out, "day", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR; return;@@ -545,7 +545,7 @@ n = fields_find( in, "ARXIV", LEVEL_ANY ); if ( n==FIELDS_NOTFOUND ) return; - fields_setused( in, n );+ fields_set_used( in, n ); /* ...write: * archivePrefix = "arXiv",@@ -609,7 +609,7 @@ n = fields_find( in, "ARTICLENUMBER", LEVEL_ANY ); if ( n==FIELDS_NOTFOUND ) return; - fields_setused( in, n );+ fields_set_used( in, n ); fstatus = fields_add( out, "pages", fields_value( in, n, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR; }@@ -620,7 +620,7 @@ /* ...append if starting page number is defined */ if ( sn!=-1 ) { str_strcat( pages, fields_value( in, sn, FIELDS_STRP ) );- fields_setused( in, sn );+ fields_set_used( in, sn ); } /* ...append dashes if both starting and ending page numbers are defined */@@ -634,7 +634,7 @@ /* ...append ending page number is defined */ if ( en!=-1 ) { str_strcat( pages, fields_value( in, en, FIELDS_STRP ) );- fields_setused( in, en );+ fields_set_used( in, en ); } if ( str_memerr( pages ) ) return BIBL_ERR_MEMERR;@@ -693,7 +693,7 @@ if ( nissue!=FIELDS_NOTFOUND && nnumber!=FIELDS_NOTFOUND ) use_issue = issue; if ( nissue!=FIELDS_NOTFOUND ) {- fields_setused( in, nissue );+ fields_set_used( in, nissue ); fstatus = fields_add( out, use_issue, fields_value( in, nissue, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR;@@ -702,7 +702,7 @@ } if ( nnumber!=FIELDS_NOTFOUND ) {- fields_setused( in, nnumber );+ fields_set_used( in, nnumber ); fstatus = fields_add( out, "number", fields_value( in, nnumber, FIELDS_CHRP ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) { *status = BIBL_ERR_MEMERR;@@ -744,9 +744,9 @@ append_type ( type, out, &status ); append_citekey ( in, out, pm->format_opts, &status );- append_people ( in, "AUTHOR", "AUTHOR:CORP", "AUTHOR:ASIS", "author", LEVEL_MAIN, out, pm->format_opts, &status );- append_people ( in, "EDITOR", "EDITOR:CORP", "EDITOR:ASIS", "editor", LEVEL_ANY, out, pm->format_opts, &status );- append_people ( in, "TRANSLATOR", "TRANSLATOR:CORP", "TRANSLATOR:ASIS", "translator", LEVEL_ANY, out, pm->format_opts, &status );+ append_people ( in, "AUTHOR", "AUTHOR:CORP", "AUTHOR:ASIS", "author", LEVEL_MAIN, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "EDITOR", "EDITOR:CORP", "EDITOR:ASIS", "editor", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status );+ append_people ( in, "TRANSLATOR", "TRANSLATOR:CORP", "TRANSLATOR:ASIS", "translator", LEVEL_ANY, out, pm->format_opts, pm->latexout, &status ); append_titles ( in, type, out, pm->format_opts, &status ); append_date ( in, out, &status ); append_simple ( in, "EDITION", "edition", out, &status );
bibutils/bibtextypes.c view
@@ -1,7 +1,7 @@ /* * bibtypes.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Program and source code released under the GPL version 2 *@@ -17,7 +17,11 @@ */ static lookups article[] = { { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN }, { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "year", "PARTDATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "PARTDATE:MONTH", SIMPLE, LEVEL_MAIN },@@ -65,7 +69,11 @@ static lookups book[] = { { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN }, { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "series", "", TITLE, LEVEL_HOST },@@ -73,6 +81,8 @@ { "organization", "ORGANIZER:CORP", BT_ORG, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN }, { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -110,12 +120,18 @@ /* Technical reports */ static lookups report[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "series", "", TITLE, LEVEL_HOST },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "institution", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },@@ -150,11 +166,17 @@ }; static lookups manual[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },- { "title", "", TITLE, LEVEL_MAIN },- { "booktitle", "", TITLE, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "title", "", TITLE, LEVEL_MAIN },+ { "booktitle", "", TITLE, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "organization", "ORGANIZER:CORP", BT_ORG, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },@@ -189,9 +211,15 @@ /* Part of a book (e.g. chapter or section) */ static lookups inbook[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_HOST },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_HOST }, { "chapter", "CHAPTER", SIMPLE, LEVEL_MAIN }, /* chapter number */ { "title", "", TITLE, LEVEL_MAIN }, /* chapter name */ { "booktitle", "", TITLE, LEVEL_HOST },@@ -235,9 +263,15 @@ /* References of papers in conference proceedings */ static lookups inproceedings[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_HOST },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_HOST }, { "chapter", "CHAPTER", SIMPLE, LEVEL_MAIN }, /* chapter number */ { "title", "", TITLE, LEVEL_MAIN }, /* chapter name */ { "booktitle", "", TITLE, LEVEL_HOST },@@ -280,9 +314,15 @@ /* Used for a section of a book with its own title */ static lookups incollection[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_HOST },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_HOST },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_HOST }, { "chapter", "CHAPTER", SIMPLE, LEVEL_MAIN }, /* chapter number */ { "title", "", TITLE, LEVEL_MAIN }, /* chapter name */ { "booktitle", "", TITLE, LEVEL_HOST },@@ -325,9 +365,15 @@ /* Proceedings */ static lookups proceedings[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "series", "", TITLE, LEVEL_HOST },@@ -365,8 +411,12 @@ }; static lookups phds[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN },@@ -398,8 +448,12 @@ }; static lookups masters[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN },@@ -433,13 +487,19 @@ /* Unpublished */ static lookups unpublished[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },- { "title", "", TITLE, LEVEL_MAIN },- { "booktitle", "", TITLE, LEVEL_MAIN },- { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN },- { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "title", "", TITLE, LEVEL_MAIN },+ { "booktitle", "", TITLE, LEVEL_MAIN },+ { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN },+ { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -469,15 +529,21 @@ * For Published Standards */ static lookups standard[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR",PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "organization", "ORGANIZER:CORP", BT_ORG, LEVEL_MAIN }, { "institution", "AUTHOR:CORP", SIMPLE, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -516,7 +582,9 @@ { "series", "", TITLE, LEVEL_HOST }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -548,13 +616,19 @@ * For Patent */ static lookups patent[] = {- { "author", "AUTHOR", PERSON, LEVEL_MAIN },- { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },- { "assignee", "ASSIGNEE", PERSON, LEVEL_MAIN },- { "title", "", TITLE, LEVEL_MAIN },- { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN },- { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },- { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN },+ { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN },+ { "assignee", "ASSIGNEE", PERSON, LEVEL_MAIN },+ { "title", "", TITLE, LEVEL_MAIN },+ { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN },+ { "address", "ADDRESS", SIMPLE, LEVEL_MAIN },+ { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, /* date granted */ { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -590,13 +664,19 @@ */ static lookups electronic[] = { { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN }, { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "organization", "ORGANIZER:CORP", BT_ORG, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN }, { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },@@ -625,7 +705,11 @@ static lookups misc[] = { { "author", "AUTHOR", PERSON, LEVEL_MAIN },+ { "author:ASIS", "AUTHOR:ASIS", PERSON, LEVEL_MAIN },+ { "author:CORP", "AUTHOR:CORP", PERSON, LEVEL_MAIN }, { "translator", "TRANSLATOR", PERSON, LEVEL_MAIN },+ { "translator:ASIS","TRANSLATOR:ASIS",PERSON, LEVEL_MAIN },+ { "translator:CORP","TRANSLATOR:CORP",PERSON, LEVEL_MAIN }, { "title", "", TITLE, LEVEL_MAIN }, { "booktitle", "", TITLE, LEVEL_MAIN }, { "publisher", "PUBLISHER", SIMPLE, LEVEL_MAIN },@@ -633,6 +717,8 @@ { "pages", "PAGES", PAGES, LEVEL_MAIN }, { "address", "ADDRESS", SIMPLE, LEVEL_MAIN }, { "editor", "EDITOR", PERSON, LEVEL_MAIN },+ { "editor:ASIS", "EDITOR:ASIS", PERSON, LEVEL_MAIN },+ { "editor:CORP", "EDITOR:CORP", PERSON, LEVEL_MAIN }, { "year", "DATE:YEAR", SIMPLE, LEVEL_MAIN }, { "month", "DATE:MONTH", SIMPLE, LEVEL_MAIN }, { "day", "DATE:DAY", SIMPLE, LEVEL_MAIN },
bibutils/bibutils.c view
@@ -1,7 +1,7 @@ /* * bibutils.c *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under the GPL version 2 *@@ -34,14 +34,15 @@ if ( status!=BIBL_OK ) return status; switch ( writemode ) {- case BIBL_ADSABSOUT: status = adsout_initparams ( p, progname ); break;- case BIBL_BIBTEXOUT: status = bibtexout_initparams( p, progname ); break;- case BIBL_ENDNOTEOUT: status = endout_initparams ( p, progname ); break;- case BIBL_ISIOUT: status = isiout_initparams ( p, progname ); break;- case BIBL_MODSOUT: status = modsout_initparams ( p, progname ); break;- case BIBL_NBIBOUT: status = nbibout_initparams ( p, progname ); break;- case BIBL_RISOUT: status = risout_initparams ( p, progname ); break;- case BIBL_WORD2007OUT: status = wordout_initparams ( p, progname ); break;+ case BIBL_ADSABSOUT: status = adsout_initparams ( p, progname ); break;+ case BIBL_BIBTEXOUT: status = bibtexout_initparams ( p, progname ); break;+ case BIBL_BIBLATEXOUT: status = biblatexout_initparams( p, progname ); break;+ case BIBL_ENDNOTEOUT: status = endout_initparams ( p, progname ); break;+ case BIBL_ISIOUT: status = isiout_initparams ( p, progname ); break;+ case BIBL_MODSOUT: status = modsout_initparams ( p, progname ); break;+ case BIBL_NBIBOUT: status = nbibout_initparams ( p, progname ); break;+ case BIBL_RISOUT: status = risout_initparams ( p, progname ); break;+ case BIBL_WORD2007OUT: status = wordout_initparams ( p, progname ); break; default: status = BIBL_ERR_BADINPUT; }
bibutils/bibutils.h view
@@ -1,7 +1,7 @@ /* * bibutils.h *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under GPL version 2 *@@ -14,16 +14,12 @@ #endif /* __cplusplus */ #include <stdio.h>+#include "bibdefs.h" #include "bibl.h" #include "slist.h" #include "charsets.h" #include "str_conv.h" -#define BIBL_OK (0)-#define BIBL_ERR_BADINPUT (-1)-#define BIBL_ERR_MEMERR (-2)-#define BIBL_ERR_CANTOPEN (-3)- #define BIBL_FIRSTIN (100) #define BIBL_MODSIN (BIBL_FIRSTIN) #define BIBL_BIBTEXIN (BIBL_FIRSTIN+1)@@ -48,7 +44,8 @@ #define BIBL_WORD2007OUT (BIBL_FIRSTOUT+5) #define BIBL_ADSABSOUT (BIBL_FIRSTOUT+6) #define BIBL_NBIBOUT (BIBL_FIRSTOUT+7)-#define BIBL_LASTOUT (BIBL_FIRSTOUT+7)+#define BIBL_BIBLATEXOUT (BIBL_FIRSTOUT+8)+#define BIBL_LASTOUT (BIBL_FIRSTOUT+8) #define BIBL_FORMAT_VERBOSE (1) #define BIBL_FORMAT_BIBOUT_FINALCOMMA (2)
bibutils/bltypes.c view
@@ -1,8 +1,8 @@ /* * bltypes.c *- * Copyright (c) Chris Putnam 2008-2019- * Copyright (c) Johannes Wilm 2010-2019+ * Copyright (c) Chris Putnam 2008-2020+ * Copyright (c) Johannes Wilm 2010-2020 * * Program and source code released under the GPL version 2 *
bibutils/bu_auth.c view
@@ -1,7 +1,7 @@ /* * bu_auth.c *- * Copyright (c) Chris Putnam 2017-2019+ * Copyright (c) Chris Putnam 2017-2020 * * Source code released under the GPL version 2 */
bibutils/charsets.c view
@@ -1,7 +1,7 @@ /* * charsets.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *
bibutils/copacin.c view
@@ -1,7 +1,7 @@ /* * copacin.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *@@ -135,21 +135,31 @@ *****************************************************/ static const char*-copacin_addtag2( const char *p, str *tag, str *data )+copacin_addfield( const char *p, str *tag, str *value ) {- int i;- i =0;+ int i;++ str_empty( tag );+ str_empty( value );++ i = 0; while ( i<3 && *p ) {- str_addchar( tag, *p++ );+ str_addchar( tag, *p );+ p++; i++; }+ while ( *p==' ' || *p=='\t' ) p++;+ while ( *p && *p!='\r' && *p!='\n' ) {- str_addchar( data, *p );+ str_addchar( value, *p ); p++; }- str_trimendingws( data );++ str_trimendingws( value );+ while ( *p=='\n' || *p=='\r' ) p++;+ return p; } @@ -164,27 +174,38 @@ static int copacin_processf( fields *copacin, const char *p, const char *filename, long nref, param *pm ) {- str tag, data;- int status;+ int status, ret = 1;+ str tag, value;+ str_init( &tag );- str_init( &data );+ str_init( &value );+ while ( *p ) {+ p = skip_ws( p );+ if ( copacin_istag( p ) ) {- p = copacin_addtag2( p, &tag, &data );+ p = copacin_addfield( p, &tag, &value ); /* don't add empty strings */- if ( str_has_value( &tag ) && str_has_value( &data ) ) {- status = fields_add( copacin, tag.data, data.data, 0 );- if ( status!=FIELDS_OK ) return 0;+ if ( str_has_value( &tag ) && str_has_value( &value ) ) {+ status = fields_add( copacin, str_cstr( &tag ), str_cstr( &value ), LEVEL_MAIN );+ if ( status!=FIELDS_OK ) {+ ret = 0;+ goto out;+ } }- str_empty( &tag );- str_empty( &data ); }- else p = copacin_nextline( p );++ else {+ p = copacin_nextline( p );+ } }++out: str_free( &tag );- str_free( &data );- return 1;+ str_free( &value );++ return ret; } /*****************************************************@@ -206,7 +227,7 @@ if ( slist_find( &(pm->asis), invalue ) !=-1 || slist_find( &(pm->corps), invalue ) !=-1 ) {- ok = name_add( bibout, outtag, invalue->data, level, &(pm->asis), &(pm->corps) );+ ok = name_add( bibout, outtag, str_cstr( invalue ), level, &(pm->asis), &(pm->corps) ); if ( ok ) return BIBL_OK; else return BIBL_ERR_MEMERR; }@@ -279,8 +300,8 @@ intag = fields_tag( bibin, i, FIELDS_STRP ); - if ( !translate_oldtag( intag->data, reftype, p->all, p->nall, &process, &level, &outtag ) ) {- copacin_report_notag( p, intag->data );+ if ( !translate_oldtag( str_cstr( intag ), reftype, p->all, p->nall, &process, &level, &outtag ) ) {+ copacin_report_notag( p, str_cstr( intag ) ); continue; }
bibutils/copactypes.c view
@@ -1,7 +1,7 @@ /* * copactypes.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *
bibutils/ebiin.c view
@@ -1,7 +1,7 @@ /* * ebiin.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *@@ -75,8 +75,8 @@ m = xml_getencoding( line ); if ( m!=CHARSET_UNKNOWN ) file_charset = m; }- if ( line->data )- startptr = xml_find_start( line->data, "Publication" );+ if ( str_has_value( line ) )+ startptr = xml_find_start( str_cstr( line ), "Publication" ); if ( startptr || inref ) { if ( inref ) str_strcat( &tmp, line ); else {@@ -334,7 +334,7 @@ } if ( sp.len ) {- status = fields_add( info, "PAGES:START", sp.data, level );+ status = fields_add( info, "PAGES:START", str_cstr( &sp ), level ); if ( status!=FIELDS_OK ) { ret = BIBL_ERR_MEMERR; goto out;@@ -346,7 +346,7 @@ sp.data[i] = ep.data[i-sp.len+ep.len]; up = &(sp); } else up = &(ep);- status = fields_add( info, "PAGES:STOP", up->data, level );+ status = fields_add( info, "PAGES:STOP", str_cstr( up ), level ); if ( status!=FIELDS_OK ) ret = BIBL_ERR_MEMERR; } @@ -382,7 +382,7 @@ { int status; if ( xml_tag_matches_has_value( node, "AbstractText" ) ) {- status = fields_add( info, "ABSTRACT", xml_value_cstr( node ), 0 );+ status = fields_add( info, "ABSTRACT", xml_value_cstr( node ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } else if ( node->next ) {@@ -406,13 +406,16 @@ { int status; char *p;+ if ( xml_tag_matches( node, "LastName" ) ) { if ( name->len ) { str_prepend( name, "|" ); str_prepend( name, xml_value_cstr( node ) ); } else str_strcat( name, xml_value( node ) );- } else if ( xml_tag_matches( node, "ForeName" ) ||+ }++ else if ( xml_tag_matches( node, "ForeName" ) || xml_tag_matches( node, "FirstName" ) ) { p = xml_value_cstr( node ); while ( p && *p ) {@@ -420,19 +423,23 @@ while ( *p==' ' ) p++; while ( *p && *p!=' ' ) str_addchar( name, *p++ ); }- } else if ( xml_tag_matches( node, "Initials" ) && !strchr( name->data, '|' ) ) {+ }++ else if ( xml_tag_matches( node, "Initials" ) && !strchr( name->data, '|' ) ) { p = xml_value_cstr( node ); while ( p && *p ) { if ( name->len ) str_addchar( name, '|' ); if ( !is_ws(*p ) ) str_addchar( name, *p++ ); } }+ if ( str_memerr( name ) ) return BIBL_ERR_MEMERR;- + if ( node->down ) { status = ebiin_author( node->down, name ); if ( status!=BIBL_OK ) return status; }+ if ( node->next ) { status = ebiin_author( node->next, name ); if ( status!=BIBL_OK ) return status;@@ -447,13 +454,15 @@ str name; str_init( &name );+ node = node->down;+ while ( node ) { if ( xml_tag_matches( node, "Author" ) && node->down ) { status = ebiin_author( node->down, &name ); if ( status!=BIBL_OK ) goto out;- if ( name.len ) {- fstatus = fields_add(info,"AUTHOR",name.data,level);+ if ( str_has_value( &name ) ) {+ fstatus = fields_add( info, "AUTHOR", str_cstr( &name ), level ); if ( fstatus!=FIELDS_OK ) { status = BIBL_ERR_MEMERR; goto out; } str_empty( &name ); }@@ -482,7 +491,7 @@ { int status; if ( xml_tag_matches_has_value( node, "TitleAbbreviation" ) ) {- status = fields_add( info, "TITLE", xml_value_cstr( node ), 1 );+ status = fields_add( info, "TITLE", xml_value_cstr( node ), LEVEL_HOST ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } if ( node->down ) {@@ -511,7 +520,7 @@ { int status; if ( xml_tag_matches_has_value( node, "DescriptorName" ) ) {- status = fields_add( info, "KEYWORD", xml_value_cstr( node ), 0 );+ status = fields_add( info, "KEYWORD", xml_value_cstr( node ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } if ( node->next ) {@@ -618,15 +627,15 @@ status = ebiin_journal1( node, info ); else if ( node->down && ( xml_tag_matches( node, "Book" ) || xml_tag_matches(node, "Report") ))- status = ebiin_book( node->down, info, 1 );+ status = ebiin_book( node->down, info, LEVEL_HOST ); else if ( xml_tag_matches( node, "ArticleTitle" ) )- status = ebiin_title( node, info, 0 );+ status = ebiin_title( node, info, LEVEL_MAIN ); else if ( xml_tag_matches( node, "Pagination" ) && node->down ) status = ebiin_pagination( node->down, info ); else if ( xml_tag_matches( node, "Abstract" ) && node->down ) status = ebiin_abstract( node->down, info ); else if ( xml_tag_matches( node, "AuthorList" ) )- status = ebiin_authorlist( node, info, 0 );+ status = ebiin_authorlist( node, info, LEVEL_MAIN ); if ( status!=BIBL_OK ) return status; if ( node->next ) {@@ -645,9 +654,9 @@ if ( xml_tag_matches( node, "Article" ) ) status = ebiin_article( node->down, info ); else if ( xml_tag_matches( node, "Book" ) )- status = ebiin_book( node->down, info, 0 );+ status = ebiin_book( node->down, info, LEVEL_MAIN ); else if ( xml_tag_matches( node, "Report" ) )- status = ebiin_book( node->down, info, 0 );+ status = ebiin_book( node->down, info, LEVEL_MAIN ); else if ( xml_tag_matches( node, "JournalInfo" ) ) status = ebiin_journal2( node->down, info ); else if ( xml_tag_matches( node, "MeshHeadingList" ) )@@ -666,9 +675,9 @@ ebiin_fixtype( xml *node, fields *info ) { char *resource = NULL, *issuance = NULL, *genre1 = NULL, *genre2 = NULL;- str *type; int reslvl, isslvl, gen1lvl, gen2lvl; int status;+ str *type; type = xml_attribute( node, "Type" ); if ( !type || type->len==0 ) return BIBL_OK;@@ -678,24 +687,24 @@ issuance = "continuing"; genre1 = "periodical"; genre2 = "academic journal";- reslvl = 0;- isslvl = 1;- gen1lvl = 1;- gen2lvl = 1;+ reslvl = LEVEL_MAIN;+ isslvl = LEVEL_HOST;+ gen1lvl = LEVEL_HOST;+ gen2lvl = LEVEL_HOST; } else if ( !strcmp( type->data, "Book" ) ) { resource = "text"; issuance = "monographic"; genre1 = "book";- reslvl = 0;- isslvl = 0;- gen1lvl = 0;+ reslvl = LEVEL_MAIN;+ isslvl = LEVEL_MAIN;+ gen1lvl = LEVEL_MAIN; } else if ( !strcmp( type->data, "BookArticle" ) ) { resource = "text"; issuance = "monographic"; genre1 = "book";- reslvl = 0;- isslvl = 1;- gen1lvl = 1;+ reslvl = LEVEL_MAIN;+ isslvl = LEVEL_HOST;+ gen1lvl = LEVEL_HOST; } if ( resource ) {
bibutils/endin.c view
@@ -1,7 +1,7 @@ /* * endin.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Program and source code released under the GPL version 2 *@@ -173,32 +173,53 @@ static int endin_processf( fields *endin, const char *p, const char *filename, long nref, param *pm ) {- str tag, data;+ str tag, value, *oldvalue; int status, n;- strs_init( &tag, &data, NULL );+ char *oldtag;++ strs_init( &tag, &value, NULL );+ while ( *p ) {- strs_empty( &tag, &data, NULL );++ strs_empty( &tag, &value, NULL );+ if ( endin_istag( p ) ) {- p = process_endline( &tag, &data, p );- if ( str_is_empty( &data ) ) continue;- status = fields_add( endin, str_cstr( &tag ), str_cstr( &data ), 0 );++ p = process_endline( &tag, &value, p );+ if ( str_is_empty( &value ) ) continue;++ status = fields_add( endin, str_cstr( &tag ), str_cstr( &value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return 0;- } else {- p = process_endline2( &tag, &data, p );- /* endnote puts %K only on 1st line of keywords */++ }++ /* endnote puts %K only on 1st line of keywords */+ else {++ p = process_endline2( &tag, &value, p );+ if ( str_is_empty( &value ) ) continue;+ n = fields_num( endin );- if ( n>0 && str_has_value( &data ) ) {- if ( !strncmp( endin->tag[n-1].data, "%K", 2 ) ) {- status = fields_add( endin, "%K", str_cstr( &data ), 0 );+ if ( n==0 ) continue; /* no previous line to append to */++ oldtag = fields_tag( endin, n-1, FIELDS_CHRP_NOUSE );++ /* last line was a keyword, so this is a new keyword */+ if ( !strncmp( oldtag, "%K", 2 ) ) {+ status = fields_add( endin, "%K", str_cstr( &value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return 0;- } else {- str_addchar( &(endin->data[n-1]), ' ' );- str_strcat( &(endin->data[n-1]), &data ); }++ /* last line wasn't a keyword, so this line should just be appended */+ else {+ oldvalue = fields_value( endin, n-1, FIELDS_STRP_NOUSE );+ str_addchar( oldvalue, ' ' );+ str_strcat( oldvalue, &value );+ if ( str_memerr( oldvalue ) ) return 0; } } }- strs_free( &tag, &data, NULL );+ strs_free( &tag, &value, NULL ); return 1; } @@ -353,9 +374,12 @@ int endin_cleanf( bibl *bin, param *p ) {+ int status; long i;- for ( i=0; i<bin->nrefs; ++i )- endin_cleanref( bin->ref[i] );+ for ( i=0; i<bin->n; ++i ) {+ status = endin_cleanref( bin->ref[i] );+ if ( status!=BIBL_OK ) return status;+ } return BIBL_OK; } @@ -558,8 +582,8 @@ for ( i=0; i<nfields; ++i ) { /* Ensure we have data */- if ( fields_nodata( bibin, i ) ) {- fields_setused( bibin, i );+ if ( fields_no_value( bibin, i ) ) {+ fields_set_used( bibin, i ); continue; } @@ -582,7 +606,7 @@ continue; } - fields_setused( bibin, i );+ fields_set_used( bibin, i ); status = convertfns[ process ]( bibin, i, intag, invalue, level, p, outtag, bibout ); if ( status!=BIBL_OK ) return status;
bibutils/endout.c view
@@ -1,7 +1,7 @@ /* * endout.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *@@ -652,7 +652,7 @@ { int added, type, status = BIBL_OK; - fields_clearused( in );+ fields_clear_used( in ); type = get_type( in, pm, refnum );
bibutils/endtypes.c view
@@ -1,7 +1,7 @@ /* * endtypes.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Program and source code released under the GPL version 2 *
bibutils/endxmlin.c view
@@ -1,7 +1,7 @@ /* * endxmlin.c *- * Copyright (c) Chris Putnam 2006-2019+ * Copyright (c) Chris Putnam 2006-2020 * * Program and source code released under the GPL version 2 *@@ -91,16 +91,18 @@ while ( !haveref && !done ) { - if ( !line->data ) {+ if ( str_is_empty( line ) ) { done = xml_readmore( fp, buf, bufsize, bufpos ); str_strcatc( line, buf ); } if ( !inref ) {- startptr = xml_find_start( line->data, "RECORD" );+ startptr = xml_find_start( str_cstr( line ), "RECORD" ); if ( startptr ) inref = 1; }- else endptr = xml_find_end( line->data, "RECORD" );+ else {+ endptr = xml_find_end( str_cstr( line ), "RECORD" );+ } /* If no <record> tag, we can trim up to last 8 bytes */ /* Emptying string can lose fragments of <record> tag */@@ -120,8 +122,8 @@ } /* ...we can reallocate in str_strcat; must re-find the tags */ else {- startptr = xml_find_start( line->data, "RECORD" );- endptr = xml_find_end( line->data, "RECORD" );+ startptr = xml_find_start( str_cstr( line ), "RECORD" );+ endptr = xml_find_end ( str_cstr( line ), "RECORD" ); str_segcpy( reference, startptr, endptr ); /* clear out information in line */ str_strcpyc( &tmp, endptr );@@ -194,7 +196,7 @@ if ( status!=BIBL_OK ) return status; if ( str_has_value( &s ) ) {- status = fields_add( info, inttag, s.data, level );+ status = fields_add( info, inttag, str_cstr( &s ), level ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } @@ -212,32 +214,41 @@ endxmlin_titles( xml *node, fields *info ) { attribs a[] = {- { "title", "%T" },- { "secondary-title", "%B" },- { "tertiary-title", "%S" },- { "alt-title", "%!" },- { "short-title", "SHORTTITLE" },+ { "title", "%T" },+ { "secondary-title", "%B" },+ { "tertiary-title", "%S" },+ { "alt-title", "%!" },+ { "short-title", "SHORTTITLE" }, };- int i, status, n = sizeof( a ) / sizeof ( a[0] );+ int n = sizeof( a ) / sizeof ( a[0] );+ int i, fstatus, status = BIBL_OK; str title;+ str_init( &title );+ for ( i=0; i<n; ++i ) { if ( xml_tag_matches( node, a[i].attrib ) && node->down ) { str_empty( &title );- status = endxmlin_datar( node, &title );- if ( status!=BIBL_OK ) return BIBL_ERR_MEMERR;+ fstatus = endxmlin_datar( node, &title );+ if ( fstatus!=BIBL_OK ) {+ status = BIBL_ERR_MEMERR;+ goto out;+ } str_trimstartingws( &title ); str_trimendingws( &title );- status = fields_add( info, a[i].internal, title.data, 0);- if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR;+ fstatus = fields_add( info, a[i].internal, str_cstr( &title ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ status = BIBL_ERR_MEMERR;+ goto out;+ } } }- if ( node->next ) {- status = endxmlin_titles( node->next, info );- if ( status!=BIBL_OK ) return status;- }++ if ( node->next ) status = endxmlin_titles( node->next, info );++out: str_free( &title );- return BIBL_OK;+ return status; } /* <contributors>@@ -278,9 +289,9 @@ endxmlin_contributors( xml *node, fields *info ) { attribs a[] = {- { "authors", "%A" },- { "secondary-authors", "%E" },- { "tertiary-authors", "%Y" },+ { "authors", "%A" },+ { "secondary-authors", "%E" },+ { "tertiary-authors", "%Y" }, { "subsidiary-authors", "%?" }, { "translated-authors", "%?" }, };@@ -303,7 +314,7 @@ { int status; if ( xml_tag_matches( node, "keyword" ) ) {- status = endxmlin_data( node, "%K", info, 0 );+ status = endxmlin_data( node, "%K", info, LEVEL_MAIN ); if ( status!=BIBL_OK ) return status; } if ( node->next ) {@@ -329,7 +340,7 @@ endxmlin_ern( xml *node, fields *info ) { if ( xml_tag_matches( node, "electronic-resource-num" ) )- return endxmlin_data( node, "DOI", info, 0 );+ return endxmlin_data( node, "DOI", info, LEVEL_MAIN ); return BIBL_OK; } @@ -337,7 +348,7 @@ endxmlin_language( xml *node, fields *info ) { if ( xml_tag_matches( node, "language" ) )- return endxmlin_data( node, "%G", info, 0 );+ return endxmlin_data( node, "%G", info, LEVEL_MAIN ); return BIBL_OK; } @@ -353,7 +364,7 @@ { int status; if ( xml_tag_matches( node, "url" ) ) {- status = endxmlin_data( node, "FILEATTACH", info, 0 );+ status = endxmlin_data( node, "FILEATTACH", info, LEVEL_MAIN ); if ( status!=BIBL_OK ) return status; } if ( node->down ) {@@ -375,7 +386,7 @@ status = endxmlin_fileattach( node->down, info ); if ( status!=BIBL_OK ) return status; } else if ( xml_tag_matches( node, "url" ) ) {- status = endxmlin_data( node, "%U", info, 0 );+ status = endxmlin_data( node, "%U", info, LEVEL_MAIN ); if ( status!=BIBL_OK ) return status; } else { if ( node->down ) {@@ -398,7 +409,7 @@ endxmlin_pubdates( xml *node, fields *info ) { if ( xml_tag_matches( node, "date" ) )- return endxmlin_data( node, "%8", info, 0 );+ return endxmlin_data( node, "%8", info, LEVEL_MAIN ); else { if ( node->down && xml_tag_matches( node->down, "date" ) ) return endxmlin_pubdates( node->down, info );@@ -411,7 +422,7 @@ { int status; if ( xml_tag_matches( node, "year" ) ) {- status = endxmlin_data( node, "%D", info, 0 );+ status = endxmlin_data( node, "%D", info, LEVEL_MAIN ); if ( status!=BIBL_OK ) return status; } else { if ( node->down ) {@@ -443,7 +454,7 @@ s = xml_attribute( node, "name" ); if ( str_has_value( s ) ) {- status = fields_add( info, "%0", str_cstr( s ), 0 );+ status = fields_add( info, "%0", str_cstr( s ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } @@ -454,32 +465,33 @@ endxmlin_record( xml *node, fields *info ) { attribs a[] = {- { "volume", "%V" },- { "num-vol", "%6" },- { "pages", "%P" },- { "number", "%N" },- { "issue", "%N" },- { "label", "%F" },- { "auth-address", "%C" },+ { "volume", "%V" },+ { "num-vol", "%6" },+ { "pages", "%P" },+ { "number", "%N" },+ { "issue", "%N" },+ { "label", "%F" },+ { "auth-address", "%C" }, { "auth-affiliation", "%C" },- { "pub-location", "%C" },- { "publisher", "%I" },- { "abstract", "%X" },- { "edition", "%7" },- { "reprint-edition", "%)" },- { "section", "%&" },- { "accession-num", "%M" },- { "call-num", "%L" },- { "isbn", "%@" },- { "notes", "%O" },- { "custom1", "%1" },- { "custom2", "%2" },- { "custom3", "%3" },- { "custom4", "%4" },- { "custom5", "%#" },- { "custom6", "%$" },+ { "pub-location", "%C" },+ { "publisher", "%I" },+ { "abstract", "%X" },+ { "edition", "%7" },+ { "reprint-edition", "%)" },+ { "section", "%&" },+ { "accession-num", "%M" },+ { "call-num", "%L" },+ { "isbn", "%@" },+ { "notes", "%O" },+ { "custom1", "%1" },+ { "custom2", "%2" },+ { "custom3", "%3" },+ { "custom4", "%4" },+ { "custom5", "%#" },+ { "custom6", "%$" }, }; int i, status, n = sizeof ( a ) / sizeof( a[0] );+ if ( xml_tag_matches( node, "DATABASE" ) ) { } else if ( xml_tag_matches( node, "SOURCE-APP" ) ) { } else if ( xml_tag_matches( node, "REC-NUMBER" ) ) {
bibutils/entities.c view
@@ -1,7 +1,7 @@ /* * entities.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *
bibutils/fields.c view
@@ -1,7 +1,7 @@ /* * fields.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *@@ -12,6 +12,22 @@ #include <string.h> #include "fields.h" +#define FIELDS_MIN_ALLOC (20)++/* private helper macros to access fields+ *+ * These skip all of the error checking and used flag manipulation+ * of the fields functions, so they are faster. However, they should+ * only be used in internal code that knows that the index is valid.+ */+#define _fields_tag(f,i) &((f)->tag[(i)])+#define _fields_tag_char(f,i) str_cstr( &((f)->tag[(i)]) )+#define _fields_tag_notempty(f,i) str_has_value( &((f)->tag[(i)]) )+#define _fields_value(f,i) &((f)->value[(i)])+#define _fields_value_char(f,i) str_cstr( &((f)->value[(i)]) )+#define _fields_value_notempty(f,i) str_has_value( &((f)->value[(i)]) )+#define _fields_level(f,i) (f)->level[(i)]+ fields* fields_new( void ) {@@ -23,11 +39,9 @@ void fields_init( fields *f ) {- f->used = NULL;- f->level = NULL;- f->tag = NULL;- f->data = NULL;- f->max = f->n = 0;+ f->used = f->level = NULL;+ f->tag = f->value = NULL;+ f->max = f->n = 0; } void@@ -36,11 +50,11 @@ int i; for ( i=0; i<f->max; ++i ) {- str_free( &(f->tag[i]) );- str_free( &(f->data[i]) );+ str_free( _fields_tag( f, i ) );+ str_free( _fields_value( f, i ) ); } if ( f->tag ) free( f->tag );- if ( f->data ) free( f->data );+ if ( f->value ) free( f->value ); if ( f->used ) free( f->used ); if ( f->level ) free( f->level ); @@ -54,99 +68,136 @@ free( f ); } -static int-fields_alloc( fields *f )+int+fields_remove( fields *f, int n ) {- int i, alloc = 20;+ int i;+ if ( n<0 || n>= f->n ) return FIELDS_ERR_MEMERR;+ for ( i=n+1; i<f->n; ++i ) {+ str_strcpy( _fields_tag ( f, i-1 ), _fields_tag ( f, i ) );+ str_strcpy( _fields_value( f, i-1 ), _fields_value( f, i ) );+ f->used[i-1] = f->used[i];+ f->level[i-1] = f->level[i];+ }+ f->n -= 1;+ return FIELDS_OK;+} +static void+initialize_new_tag_data_pairs( fields *f, int start, int end )+{+ int i;+ for ( i=start; i<end; ++i ) {+ str_init( _fields_tag( f, i ) );+ str_init( _fields_value( f, i ) );+ }+}++static int+fields_alloc( fields *f, int alloc )+{ f->tag = (str *) malloc( sizeof(str) * alloc );- f->data = (str *) malloc( sizeof(str) * alloc );- f->used = (int *) calloc( alloc, sizeof(int) );- f->level = (int *) calloc( alloc, sizeof(int) );- if ( !f->tag || !f->data || !f->used || !f->level ){+ f->value = (str *) malloc( sizeof(str) * alloc );+ f->used = (int *) calloc( alloc, sizeof(int) );+ f->level = (int *) calloc( alloc, sizeof(int) );+ if ( !f->tag || !f->value || !f->used || !f->level ){ if ( f->tag ) free( f->tag );- if ( f->data ) free( f->data );+ if ( f->value ) free( f->value ); if ( f->used ) free( f->used ); if ( f->level ) free( f->level ); fields_init( f );- return FIELDS_ERR;+ return FIELDS_ERR_MEMERR; } + initialize_new_tag_data_pairs( f, 0, alloc );+ f->max = alloc;- f->n = 0;- for ( i=0; i<alloc; ++i ) {- str_init( &(f->tag[i]) );- str_init( &(f->data[i]) );- }+ f->n = 0;+ return FIELDS_OK; } static int fields_realloc( fields *f ) {- str *newtags, *newdata; int *newused, *newlevel;- int i, alloc = f->max * 2;+ str *newtags, *newvalue;+ int alloc; - newtags = (str*) realloc( f->tag, sizeof(str) * alloc );- newdata = (str*) realloc( f->data, sizeof(str) * alloc );- newused = (int*) realloc( f->used, sizeof(int) * alloc );- newlevel= (int*) realloc( f->level, sizeof(int) * alloc );+ alloc = f->max * 2;+ if ( alloc < f->max ) return FIELDS_ERR_MEMERR; /* integer overflow */ + newtags = (str*) realloc( f->tag, sizeof(str) * alloc );+ newvalue = (str*) realloc( f->value, sizeof(str) * alloc );+ newused = (int*) realloc( f->used, sizeof(int) * alloc );+ newlevel = (int*) realloc( f->level, sizeof(int) * alloc );++ /*+ * ensure struct fields is consistent by reassigning pointers for any successful+ * reallocation prior to failing on memory error+ */ if ( newtags ) f->tag = newtags;- if ( newdata ) f->data = newdata;+ if ( newvalue ) f->value = newvalue; if ( newused ) f->used = newused; if ( newlevel ) f->level = newlevel;- - if ( !newtags || !newdata || !newused || !newlevel )- return FIELDS_ERR; + if ( !newtags || !newvalue || !newused || !newlevel )+ return FIELDS_ERR_MEMERR;++ initialize_new_tag_data_pairs( f, f->n, alloc );+ f->max = alloc; - for ( i=f->n; i<alloc; ++i ) {- str_init( &(f->tag[i]) );- str_init( &(f->data[i]) );+ return FIELDS_OK;+}++static int+ensure_space( fields *f )+{+ int status = FIELDS_OK;+ if ( f->max==0 ) status = fields_alloc( f, FIELDS_MIN_ALLOC );+ else if ( f->n==f->max ) status = fields_realloc( f );+ return status;+}++static int+is_duplicate_entry( fields *f, const char *tag, const char *value, int level )+{+ int i;++ for ( i=0; i<f->n; i++ ) {+ if ( _fields_level( f, i ) != level ) continue;+ if ( strcasecmp( _fields_tag_char( f, i ), tag ) ) continue;+ if ( strcasecmp( _fields_value_char( f, i ), value ) ) continue;+ return 1; } - return FIELDS_OK;+ return 0; } int-_fields_add( fields *f, const char *tag, const char *data, int level, int mode )+_fields_add( fields *f, const char *tag, const char *value, int level, int mode ) {- int i, n, status;- str *t, *d;+ int n, status; - if ( !tag || !data ) return FIELDS_OK;+ /* Don't add incomplete entry */+ if ( !tag || !value ) return FIELDS_OK; - if ( f->max==0 ) {- status = fields_alloc( f );- if ( status!=FIELDS_OK ) return status;- } else if ( f->n >= f->max ) {- status = fields_realloc( f );- if ( status!=FIELDS_OK ) return status;- }+ /* Don't add duplicate entry if FIELDS_NO_DUPS */+ if ( mode == FIELDS_NO_DUPS && is_duplicate_entry( f, tag, value, level ) )+ return FIELDS_OK; - /* Don't duplicate identical entries if FIELDS_NO_DUPS */- if ( mode == FIELDS_NO_DUPS ) {- for ( i=0; i<f->n; i++ ) {- t = &(f->tag[i]);- d = &(f->data[i]);- if ( f->level[i]==level &&- !strcasecmp( str_cstr( t ), tag ) &&- !strcasecmp( str_cstr( d ), data ) )- return FIELDS_OK;- }- }+ status = ensure_space( f );+ if ( status!=FIELDS_OK ) return status; n = f->n; f->used[ n ] = 0; f->level[ n ] = level;- str_strcpyc( &(f->tag[n]), tag );- str_strcpyc( &(f->data[n]), data );+ str_strcpyc( _fields_tag( f, n ), tag );+ str_strcpyc( _fields_value( f, n ), value ); - if ( str_memerr( &(f->tag[n]) ) || str_memerr( &(f->data[n] ) ) )- return FIELDS_ERR;+ if ( str_memerr( &(f->tag[n]) ) || str_memerr( &(f->value[n] ) ) )+ return FIELDS_ERR_MEMERR; f->n++; @@ -154,21 +205,68 @@ } int-_fields_add_tagsuffix( fields *f, const char *tag, const char *suffix,- const char *data, int level, int mode )+_fields_add_suffix( fields *f, const char *tag, const char *suffix, const char *value, int level, int mode ) { str newtag; int ret; str_init( &newtag );+ str_mergestrs( &newtag, tag, suffix, NULL );- if ( str_memerr( &newtag ) ) ret = FIELDS_ERR;- else ret = _fields_add( f, newtag.data, data, level, mode );+ if ( str_memerr( &newtag ) )+ ret = FIELDS_ERR_MEMERR;+ else+ ret = _fields_add( f, str_cstr( &newtag ), value, level, mode );+ str_free( &newtag ); return ret; } +static fields*+fields_new_size( int alloc )+{+ int status;+ fields *f;++ f = ( fields * ) malloc( sizeof( fields ) );+ if ( f ) {+ fields_init( f );+ status = fields_alloc( f, alloc );+ if ( status!=FIELDS_OK ) {+ fields_delete( f );+ return NULL;+ }+ }+ return f;+}++fields *+fields_dupl( fields *in )+{+ int i, level, status;+ char *tag, *value;+ fields *out;++ out = fields_new_size( in->n );+ if ( !out ) return NULL;++ for ( i=0; i<in->n; ++i ) {+ tag = _fields_tag_char( in, i );+ value = _fields_value_char( in, i );+ level = _fields_level( in, i );+ if ( tag && value ) {+ status = fields_add_can_dup( out, tag, value, level );+ if ( status!=FIELDS_OK ) {+ fields_delete( out );+ return NULL;+ }+ }+ }++ return out;+}+ /* fields_match_level() * * returns 1 if level matched, 0 if not@@ -189,31 +287,31 @@ * */ int-fields_match_tag( fields *info, int n, const char *tag )+fields_match_tag( fields *f, int n, const char *tag ) {- if ( !strcmp( fields_tag( info, n, FIELDS_CHRP ), tag ) ) return 1;+ if ( !strcmp( _fields_tag_char( f, n ), tag ) ) return 1; return 0; } int-fields_match_casetag( fields *info, int n, const char *tag )+fields_match_casetag( fields *f, int n, const char *tag ) {- if ( !strcasecmp( fields_tag( info, n, FIELDS_CHRP ), tag ) ) return 1;+ if ( !strcasecmp( _fields_tag_char( f, n ), tag ) ) return 1; return 0; } int-fields_match_tag_level( fields *info, int n, const char *tag, int level )+fields_match_tag_level( fields *f, int n, const char *tag, int level ) {- if ( !fields_match_level( info, n, level ) ) return 0;- return fields_match_tag( info, n, tag );+ if ( !fields_match_level( f, n, level ) ) return 0;+ return fields_match_tag( f, n, tag ); } int-fields_match_casetag_level( fields *info, int n, const char *tag, int level )+fields_match_casetag_level( fields *f, int n, const char *tag, int level ) {- if ( !fields_match_level( info, n, level ) ) return 0;- return fields_match_casetag( info, n, tag );+ if ( !fields_match_level( f, n, level ) ) return 0;+ return fields_match_casetag( f, n, tag ); } /* fields_find()@@ -229,7 +327,7 @@ for ( i=0; i<f->n; ++i ) { if ( !fields_match_casetag_level( f, i, tag, level ) ) continue;- if ( f->data[i].len ) return i;+ if ( str_has_value( _fields_value( f, i ) ) ) return i; else { /* if there is no data for the tag, don't "find" it */ /* and set "used" so noise is suppressed */@@ -246,10 +344,10 @@ int i, max = 0; if ( f->n ) {- max = f->level[0];+ max = _fields_level( f, 0 ); for ( i=1; i<f->n; ++i ) {- if ( f->level[i] > max )- max = f->level[i];+ if ( _fields_level( f, i ) > max )+ max = _fields_level( f, i ); } } @@ -257,7 +355,7 @@ } void-fields_clearused( fields *f )+fields_clear_used( fields *f ) { int i; @@ -266,7 +364,7 @@ } void-fields_setused( fields *f, int n )+fields_set_used( fields *f, int n ) { if ( n >= 0 && n < f->n ) f->used[n] = 1;@@ -274,16 +372,20 @@ /* fields_replace_or_add() *- * return FIELDS_OK on success, FIELDS_ERR on memory error+ * return FIELDS_OK on success, else FIELDS_ERR_MEMERR */ int-fields_replace_or_add( fields *f, const char *tag, const char *data, int level )+fields_replace_or_add( fields *f, const char *tag, const char *value, int level ) {- int n = fields_find( f, tag, level );- if ( n==FIELDS_NOTFOUND ) return fields_add( f, tag, data, level );+ int n;++ n = fields_find( f, tag, level );+ if ( n==FIELDS_NOTFOUND ) {+ return fields_add( f, tag, value, level );+ } else {- str_strcpyc( &(f->data[n]), data );- if ( str_memerr( &(f->data[n]) ) ) return FIELDS_ERR;+ str_strcpyc( _fields_value( f, n ), value );+ if ( str_memerr( _fields_value( f, n ) ) ) return FIELDS_ERR_MEMERR; return FIELDS_OK; } }@@ -298,28 +400,31 @@ } int-fields_notag( fields *f, int n )+fields_no_tag( fields *f, int n ) {- str *t; if ( n >= 0 && n < f->n ) {- t = &( f->tag[n] );- if ( t->len > 0 ) return 0;+ if ( _fields_tag_notempty( f, n ) ) return 0; } return 1; } int-fields_nodata( fields *f, int n )+fields_no_value( fields *f, int n ) {- str *d; if ( n >= 0 && n < f->n ) {- d = &( f->data[n] );- if ( d->len > 0 ) return 0;+ if ( _fields_value_notempty( f, n ) ) return 0; } return 1; } int+fields_has_value( fields *f, int n )+{+ if ( n >= 0 && n < f->n ) return _fields_value_notempty( f, n );+ return 0;+}++int fields_num( fields *f ) { return f->n;@@ -346,16 +451,18 @@ if ( n<0 || n>= f->n ) return NULL; if ( mode & FIELDS_SETUSE_FLAG )- fields_setused( f, n );+ fields_set_used( f, n ); - if ( mode & FIELDS_STRP_FLAG )- return &(f->data[n]);+ if ( mode & FIELDS_STRP_FLAG ) {+ return ( void * ) _fields_value( f, n );+ } else if ( mode & FIELDS_POSP_FLAG ) {- retn = n;- return ( void * ) retn; /* Rather pointless */- } else {- if ( f->data[n].len )- return f->data[n].data;+ retn = n; /* avoid compiler warning */+ return ( void * ) retn; /* Rather pointless -- the user provided "n" */+ }+ else {+ if ( str_has_value( _fields_value( f, n ) ) )+ return _fields_value_char( f, n ); else return fields_null_value; }@@ -368,14 +475,16 @@ if ( n<0 || n>= f->n ) return NULL; - if ( mode & FIELDS_STRP_FLAG )- return &(f->tag[n]);+ if ( mode & FIELDS_STRP_FLAG ) {+ return ( void * ) _fields_tag( f, n );+ } else if ( mode & FIELDS_POSP_FLAG ) {- retn = n;- return ( void * ) retn; /* Rather pointless */- } else {- if ( f->tag[n].len )- return f->tag[n].data;+ retn = n; /* avoid compiler warning */+ return ( void * ) retn; /* Rather pointless -- the user provided "n" */+ }+ else {+ if ( str_has_value( _fields_tag( f, n ) ) )+ return _fields_tag_char( f, n ); else return fields_null_value; }@@ -385,22 +494,23 @@ fields_level( fields *f, int n ) { if ( n<0 || n>= f->n ) return 0;- return f->level[n];+ return _fields_level( f, n ); } void * fields_findv( fields *f, int level, int mode, const char *tag ) { int i, found = FIELDS_NOTFOUND;- intptr_t retn; - for ( i=0; i<f->n && found==FIELDS_NOTFOUND; ++i ) {+ for ( i=0; i<f->n; ++i ) { if ( !fields_match_level( f, i, level ) ) continue; if ( !fields_match_casetag( f, i, tag ) ) continue; - if ( f->data[i].len!=0 ) found = i;- else {+ if ( _fields_value_notempty( f, i ) ) {+ found = i;+ break;+ } else { if ( mode & FIELDS_NOLENOK_FLAG ) { return (void *) fields_null_value; } else if ( mode & FIELDS_SETUSE_FLAG ) {@@ -410,17 +520,7 @@ } if ( found==FIELDS_NOTFOUND ) return NULL;-- if ( mode & FIELDS_SETUSE_FLAG )- fields_setused( f, found );-- if ( mode & FIELDS_STRP_FLAG )- return (void *) &(f->data[found]);- else if ( mode & FIELDS_POSP_FLAG ) {- retn = found;- return (void *) retn;- } else- return (void *) f->data[found].data;+ else return fields_value( f, found, mode ); } void *@@ -448,23 +548,13 @@ int status; void *v; - if ( n<0 || n>= f->n ) return FIELDS_OK;-- if ( mode & FIELDS_SETUSE_FLAG )- fields_setused( f, n );-- if ( mode & FIELDS_STRP_FLAG ) {- v = ( void * ) &( f->data[n] );- } else if ( mode & FIELDS_POSP_FLAG ) {- v = ( void * )( (long long) n );- } else {- v = ( void * ) str_cstr( &( f->data[n] ) );- }+ v = fields_value( f, n, mode );+ if ( !v ) return FIELDS_OK; status = vplist_add( a, v ); if ( status==VPLIST_OK ) return FIELDS_OK;- else return FIELDS_ERR;+ else return FIELDS_ERR_MEMERR; } int@@ -477,7 +567,7 @@ if ( !fields_match_level( f, i, level ) ) continue; if ( !fields_match_casetag( f, i, tag ) ) continue; - if ( f->data[i].len!=0 ) {+ if ( _fields_value_notempty( f, i ) ) { status = fields_findv_each_add( f, mode, i, a ); if ( status!=FIELDS_OK ) return status; } else {@@ -502,7 +592,7 @@ while ( ( tag = ( char * ) va_arg( argp, char * ) ) ) { status = vplist_add( tags, tag );- if ( status!=VPLIST_OK ) return FIELDS_ERR;+ if ( status!=VPLIST_OK ) return FIELDS_ERR_MEMERR; } return FIELDS_OK;@@ -540,7 +630,7 @@ if ( !fields_match_level( f, i, level ) ) continue; if ( !fields_match_casetags( f, i, &tags ) ) continue; - if ( f->data[i].len!=0 || ( mode & FIELDS_NOLENOK_FLAG ) ) {+ if ( _fields_value_notempty( f, i ) || ( mode & FIELDS_NOLENOK_FLAG ) ) { status = fields_findv_each_add( f, mode, i, a ); if ( status!=FIELDS_OK ) goto out; } else {@@ -563,10 +653,9 @@ for ( i=0; i<n; ++i ) { fprintf( stderr, "%d\tlevel = %d\t'%s' = '%s'\n", i+1,- fields_level( f, i ),- (char*)fields_tag( f, i, FIELDS_CHRP_NOUSE ),- (char*)fields_value( f, i, FIELDS_CHRP_NOUSE )+ _fields_level( f, i ),+ _fields_tag_char( f, i ),+ _fields_value_char( f, i ) ); } }-
bibutils/fields.h view
@@ -1,7 +1,7 @@ /* * fields.h *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *@@ -9,8 +9,8 @@ #ifndef FIELDS_H #define FIELDS_H -#define FIELDS_OK (1)-#define FIELDS_ERR (0)+#define FIELDS_OK (1)+#define FIELDS_ERR_MEMERR (0) #define FIELDS_NOTFOUND (-1) @@ -26,7 +26,7 @@ typedef struct fields { str *tag;- str *data;+ str *value; int *used; int *level; int n;@@ -35,30 +35,33 @@ void fields_init( fields *f ); fields *fields_new( void );+fields *fields_dupl( fields *f ); void fields_delete( fields *f ); void fields_free( fields *f ); +int fields_remove( fields *f, int n );+ #define FIELDS_CAN_DUP (0) #define FIELDS_NO_DUPS (1) -#define fields_add( a, b, c, d ) _fields_add( a, b, c, d, FIELDS_NO_DUPS )-#define fields_add_can_dup( a, b, c, d ) _fields_add( a, b, c, d, FIELDS_CAN_DUP )-#define fields_add_tagsuffix( a, b, c, d, e ) _fields_add( a, b, c, d, e, FIELDS_NO_DUPS )-#define fields_add_tagsuffix_can_dup( a, b, c, d, e ) _fields_add( a, b, c, d, e, FIELDS_CAN_DUP )+#define fields_add( a, b, c, d ) _fields_add( a, b, c, d, FIELDS_NO_DUPS )+#define fields_add_can_dup( a, b, c, d ) _fields_add( a, b, c, d, FIELDS_CAN_DUP )+#define fields_add_suffix( a, b, c, d, e ) _fields_add_suffix( a, b, c, d, e, FIELDS_NO_DUPS )+#define fields_add_suffix_can_dup( a, b, c, d, e ) _fields_add_suffix( a, b, c, d, e, FIELDS_CAN_DUP ) -int _fields_add( fields *f, const char *tag, const char *data, int level, int mode );-int _fields_add_tagsuffix( fields *f, const char *tag, const char *suffix,- const char *data, int level, int mode );+int _fields_add ( fields *f, const char *tag, const char *value, int level, int mode );+int _fields_add_suffix( fields *f, const char *tag, const char *suffix, const char *value, int level, int mode ); int fields_maxlevel( fields *f );-void fields_clearused( fields *f );-void fields_setused( fields *f, int n );-int fields_replace_or_add( fields *f, const char *tag, const char *data, int level );+void fields_clear_used( fields *f );+void fields_set_used( fields *f, int n );+int fields_replace_or_add( fields *f, const char *tag, const char *value, int level ); int fields_num( fields *f ); int fields_used( fields *f, int n );-int fields_notag( fields *f, int n );-int fields_nodata( fields *f, int n );+int fields_no_tag( fields *f, int n );+int fields_no_value( fields *f, int n );+int fields_has_value( fields *f, int n ); int fields_match_level( fields *f, int n, int level ); int fields_match_tag( fields *f, int n, const char *tag );
bibutils/generic.c view
@@ -1,6 +1,6 @@ /* generic.c *- * Copyright (c) Chris Putnam 2016-2019+ * Copyright (c) Chris Putnam 2016-2020 * * Source code released under GPL version 2 *@@ -70,7 +70,7 @@ int generic_skip( fields *bibin, int n, str *intag, str *invalue, int level, param *pm, char *outtag, fields *bibout ) {- fields_setused( bibin, n );+ fields_set_used( bibin, n ); return BIBL_OK; }
bibutils/intlist.c view
@@ -1,7 +1,7 @@ /* * intlist.c *- * Copyright (c) Chris Putnam 2007-2019+ * Copyright (c) Chris Putnam 2007-2020 * * Version 1/12/2017 *
bibutils/is_ws.c view
@@ -1,7 +1,7 @@ /* * is_ws.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *
bibutils/isiin.c view
@@ -1,7 +1,7 @@ /* * isiin.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *@@ -94,10 +94,15 @@ { int haveref = 0, inref = 0; char *p;+ *fcharset = CHARSET_UNKNOWN;+ while ( !haveref && readmore( fp, buf, bufsize, bufpos, line ) ) {- if ( !line->data ) continue;- p = &(line->data[0]);++ if ( str_is_empty( line ) ) continue;++ p = str_cstr( line );+ /* Recognize UTF8 BOM */ if ( line->len > 2 && (unsigned char)(p[0])==0xEF &&@@ -106,6 +111,7 @@ *fcharset = CHARSET_UNICODE; p += 3; }+ /* Each reference ends with 'ER ' */ if ( is_isi_tag( p ) ) { if ( !strncmp( p, "FN ", 3 ) ) {@@ -142,32 +148,45 @@ *****************************************************/ static const char *-process_tagged_line( str *tag, str *data, const char *p )+process_tagged_line( str *tag, str *value, const char *p ) {- int i;+ int i = 0; /* collect tag and skip past it */- i = 0; while ( i<2 && *p && *p!='\r' && *p!='\n') {- str_addchar( tag, *p++ );+ str_addchar( tag, *p );+ p++; i++; }+ while ( *p==' ' || *p=='\t' ) p++;- while ( *p && *p!='\r' && *p!='\n' )- str_addchar( data, *p++ );- str_trimendingws( data );++ while ( *p && *p!='\r' && *p!='\n' ) {+ str_addchar( value, *p );+ p++;+ }++ str_trimendingws( value );+ while ( *p=='\r' || *p=='\n' ) p++;+ return p; } static const char *-process_untagged_line( str *data, const char *p )+process_untagged_line( str *value, const char *p ) { while ( *p==' ' || *p=='\t' ) p++;- while ( *p && *p!='\r' && *p!='\n' )- str_addchar( data, *p++ );- str_trimendingws( data );++ while ( *p && *p!='\r' && *p!='\n' ) {+ str_addchar( value, *p );+ p++;+ }++ str_trimendingws( value );+ while ( *p=='\r' || *p=='\n' ) p++;+ return p; } @@ -177,7 +196,7 @@ int status; if ( str_has_value( tag ) && str_has_value( value ) ) {- status = fields_add( isiin, str_cstr( tag ), str_cstr( value ), 0 );+ status = fields_add( isiin, str_cstr( tag ), str_cstr( value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; *tag_added = 1; }@@ -193,6 +212,7 @@ merge_tag_value( fields *isiin, str *tag, str *value, int *tag_added ) { int n, status;+ str *oldvalue; if ( str_has_value( value ) ) { @@ -203,22 +223,23 @@ /* only one AU or AF for list of authors */ if ( !strcmp( str_cstr( tag ), "AU" ) ) {- status = fields_add( isiin, "AU", str_cstr( value ), 0 );+ status = fields_add( isiin, "AU", str_cstr( value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } else if ( !strcmp( str_cstr( tag ), "AF" ) ) {- status = fields_add( isiin, "AF", str_cstr( value ), 0 );+ status = fields_add( isiin, "AF", str_cstr( value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; } /* otherwise append multiline data */ else {- str_addchar( &(isiin->data[n-1]),' ');- str_strcat( &(isiin->data[n-1]), value );- if ( str_memerr( &(isiin->data[n-1]) ) ) return BIBL_ERR_MEMERR;+ oldvalue = fields_value( isiin, n-1, FIELDS_STRP_NOUSE );+ str_addchar( oldvalue, ' ' );+ str_strcat( oldvalue, value );+ if ( str_memerr( oldvalue ) ) return BIBL_ERR_MEMERR; } } else {- status = fields_add( isiin, str_cstr( tag ), str_cstr( value ), 0 );+ status = fields_add( isiin, str_cstr( tag ), str_cstr( value ), LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; *tag_added = 1; }@@ -322,8 +343,8 @@ static int isiin_keyword( fields *bibin, int n, str *intag, str *invalue, int level, param *pm, char *outtag, fields *bibout ) {+ const char *p = str_cstr( invalue ); int fstatus, status = BIBL_OK;- const char *p = invalue->data; str keyword; str_init( &keyword );
bibutils/isiout.c view
@@ -1,7 +1,7 @@ /* * isiout.c *- * Copyright (c) Chris Putnam 2008-2019+ * Copyright (c) Chris Putnam 2008-2020 * * Source code released under the GPL version 2 *@@ -304,40 +304,41 @@ append_title ( in, "TI", LEVEL_MAIN, out, &status ); if ( type==TYPE_ARTICLE ) {- append_title( in, "SO", LEVEL_HOST, out, &status );- append_abbrtitle( in, "JI", LEVEL_HOST, out, &status );- append_title( in, "SE", LEVEL_SERIES, out, &status );+ append_title ( in, "SO", LEVEL_HOST, out, &status );+ append_abbrtitle( in, "JI", LEVEL_HOST, out, &status );+ append_title ( in, "SE", LEVEL_SERIES, out, &status ); } else if ( type==TYPE_INBOOK ) {- append_title( in, "BT", LEVEL_HOST, out, &status );- append_title( in, "SE", LEVEL_SERIES, out, &status );+ append_title ( in, "BT", LEVEL_HOST, out, &status );+ append_title ( in, "SE", LEVEL_SERIES, out, &status ); } else { /* type==BOOK */- append_title( in, "SE", LEVEL_HOST, out, &status );+ append_title ( in, "SE", LEVEL_HOST, out, &status ); } append_date( in, out, &status ); - append_easy( in, "PAGES:START", "BP", LEVEL_ANY, out, &status );- append_easy( in, "PAGES:STOP", "EP", LEVEL_ANY, out, &status );- append_easy( in, "ARTICLENUMBER", "AR", LEVEL_ANY, out, &status );- append_easy( in, "PAGES:TOTAL", "PG", LEVEL_ANY, out, &status );+ append_easy( in, "PAGES:START", "BP", LEVEL_ANY, out, &status );+ append_easy( in, "PAGES:STOP", "EP", LEVEL_ANY, out, &status );+ append_easy( in, "ARTICLENUMBER", "AR", LEVEL_ANY, out, &status );+ append_easy( in, "PAGES:TOTAL", "PG", LEVEL_ANY, out, &status ); - append_easy( in, "VOLUME", "VL", LEVEL_ANY, out, &status );- append_easy( in, "ISSUE", "IS", LEVEL_ANY, out, &status );- append_easy( in, "NUMBER", "IS", LEVEL_ANY, out, &status );- append_easy( in, "PUBLISHER", "PU", LEVEL_ANY, out, &status );- append_easy( in, "DOI", "DI", LEVEL_ANY, out, &status );- append_easy( in, "URL", "WP", LEVEL_ANY, out, &status );- append_easy( in, "ISIREFNUM", "UT", LEVEL_ANY, out, &status );- append_easy( in, "LANGUAGE", "LA", LEVEL_ANY, out, &status );- append_easy( in, "ISIDELIVERNUM", "GA", LEVEL_ANY, out, &status );+ append_easy( in, "VOLUME", "VL", LEVEL_ANY, out, &status );+ append_easy( in, "ISSUE", "IS", LEVEL_ANY, out, &status );+ append_easy( in, "NUMBER", "IS", LEVEL_ANY, out, &status );+ append_easy( in, "PUBLISHER", "PU", LEVEL_ANY, out, &status );+ append_easy( in, "ADDRESS:PUBLISHER", "PA", LEVEL_ANY, out, &status );+ append_easy( in, "DOI", "DI", LEVEL_ANY, out, &status );+ append_easy( in, "URL", "WP", LEVEL_ANY, out, &status );+ append_easy( in, "ISIREFNUM", "UT", LEVEL_ANY, out, &status );+ append_easy( in, "LANGUAGE", "LA", LEVEL_ANY, out, &status );+ append_easy( in, "ISIDELIVERNUM", "GA", LEVEL_ANY, out, &status ); append_keywords( in, out, &status );- append_easy( in, "ISBN", "SN", LEVEL_ANY, out, &status );- append_easy( in, "ISSN", "SN", LEVEL_ANY, out, &status );- append_easy( in, "ABSTRACT", "AB", LEVEL_ANY, out, &status );- append_easy( in, "TIMESCITED", "TC", LEVEL_ANY, out, &status );- append_easy( in, "NUMBERREFS", "NR", LEVEL_ANY, out, &status );- append_easy( in, "CITEDREFS", "CR", LEVEL_ANY, out, &status );- append_easy( in, "ADDRESS", "PI", LEVEL_ANY, out, &status );+ append_easy( in, "ISBN", "SN", LEVEL_ANY, out, &status );+ append_easy( in, "ISSN", "SN", LEVEL_ANY, out, &status );+ append_easy( in, "ABSTRACT", "AB", LEVEL_ANY, out, &status );+ append_easy( in, "TIMESCITED", "TC", LEVEL_ANY, out, &status );+ append_easy( in, "NUMBERREFS", "NR", LEVEL_ANY, out, &status );+ append_easy( in, "CITEDREFS", "CR", LEVEL_ANY, out, &status );+ append_easy( in, "ADDRESS", "PI", LEVEL_ANY, out, &status ); return status; }
bibutils/isitypes.c view
@@ -1,7 +1,7 @@ /* * isitypes.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Program and source code released under the GPL version 2 *
bibutils/latex.c view
@@ -3,7 +3,7 @@ * * convert between latex special chars and unicode *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *@@ -17,484 +17,454 @@ #define LATEX_MACRO (1) /* 'macro_name' to be protected by {\macro_name} on output */ #define LATEX_MATH (2) /* 'math_expression' to be protected by $math_expression$ on output */ +#define NUM_VARIANTS (2)++#define ENTRY(a) { (a), (sizeof(a)/sizeof(char))-1 }+#define EMPTY { NULL, 0 }++#define COMBO2(a,b,c,d) { (a), LATEX_COMBO, (b), { ENTRY(c), ENTRY(d) } }+#define COMBO1(a,b,c) { (a), LATEX_COMBO, (b), { ENTRY(c), EMPTY } }+#define MACRO2(a,b,c,d) { (a), LATEX_MACRO, (b), { ENTRY(c), ENTRY(d) } }+#define MACRO1(a,b,c) { (a), LATEX_MACRO, (b), { ENTRY(c), EMPTY } }+#define MATH2(a,b,c,d) { (a), LATEX_MATH, (b), { ENTRY(c), ENTRY(d) } }+#define MATH1(a,b,c) { (a), LATEX_MATH, (b), { ENTRY(c), EMPTY } }++struct latex_entry {+ char *entry;+ int length;+};+ struct latex_chars {- unsigned int unicode; /* unicode code point */- unsigned char type; /* LATEX_COMBO/LATEX_MACRO/LATEX_MATH */- char *out; /* unadorned latex combination for output */- char *variant[3]; /* possible variations on input */+ unsigned int unicode; /* unicode code point */+ unsigned char type; /* LATEX_COMBO/LATEX_MACRO/LATEX_MATH */+ char *out; /* unadorned latex combination for output */+ struct latex_entry variant[NUM_VARIANTS]; /* possible variations on input */ }; static struct latex_chars latex_chars[] = { - /* LaTeX special characters */- { 32, LATEX_COMBO, " ", { "\\ ", NULL, NULL } }, /* escaping the space is used to avoid extra space after periods */- { 35, LATEX_MACRO, "#", { "\\#", NULL, NULL } }, /* Number/pound/hash sign */- { 36, LATEX_MACRO, "$", { "\\$", NULL, NULL } }, /* Dollar Sign */- { 37, LATEX_MACRO, "%", { "\\%", NULL, NULL } }, /* Percent Sign */- { 38, LATEX_MACRO, "&", { "\\&", NULL, NULL } }, /* Ampersand */- { 95, LATEX_MACRO, "_", { "\\_", NULL, NULL } }, /* Underscore alone indicates subscript */- { 123, LATEX_MACRO, "{", { "\\{", "{\\textbraceleft}", "\\textbraceleft" } }, /* Left Curly Bracket */- { 125, LATEX_MACRO, "}", { "\\}", "{\\textbraceright}", "\\textbraceright" } }, /* Right Curly Bracket */- { 92, LATEX_MACRO, "backslash", { "{\\backslash}", "\\backslash", NULL } }, /* Backslash */- { 176, LATEX_MACRO, "textdegree", { "{\\textdegree}", "\\textdegree", "^\\circ" } }, /* Degree sign */- { 126, LATEX_MACRO, "textasciitilde", { "{\\textasciitilde}", "\\textasciitilde", "\\~{}" } }, /* Tilde in latex */-/* fix sticky spaces "~" in bibtex token cleaning--allows tokens to be parsed properly */-- /* Latin Capital A */- { 192, LATEX_MACRO, "`A", { "{\\`A}", "\\`{A}", "\\`A" } }, /* with grave */- { 193, LATEX_MACRO, "'A", { "{\\'A}", "\\'{A}", "\\'A" } }, /* with acute */- { 194, LATEX_MACRO, "^A", { "{\\^A}", "\\^{A}", "\\^A" } }, /* with circumflex */- { 195, LATEX_MACRO, "~A", { "{\\~A}", "\\~{A}", "\\~A" } }, /* with tilde */- { 196, LATEX_MACRO, "\"A", { "{\\\"A}", "\\\"{A}", "\\\"A" } }, /* with diuresis */- { 197, LATEX_MACRO, "AA", { "{\\AA}", "{\\r{A}}", "\\r{A}"} }, /* with ring above */- { 256, LATEX_MACRO, "={A}", { "{\\={A}}", "\\={A}", "\\=A" } }, /* with macron */- { 258, LATEX_MACRO, "u{A}", { "{\\u{A}}", "\\u{A}", "\\u A" } }, /* with breve */- { 260, LATEX_MACRO, "k{A}", { "{\\k{A}}", "\\k{A}", "\\k A" } }, /* with ogonek */- { 461, LATEX_MACRO, "v{A}", { "{\\v{A}}", "\\v{A}", "\\v A" } }, /* with caron */+ MACRO1( 192, "`A", "\\`A" ), /* Latin Capital A with grave */+ MACRO1( 224, "`a", "\\`a" ), /* Latin Small a with grave */+ MACRO1( 193, "'A", "\\'A" ), /* Latin Capital A with acute */+ MACRO1( 225, "'a", "\\'a" ), /* Latin Small a with acute */+ MACRO1( 194, "^A", "\\^A" ), /* Latin Capital A with circumflex */+ MACRO1( 226, "^a", "\\^a" ), /* Latin Small a with circumflex */+ MACRO1( 195, "~A", "\\~A" ), /* Latin Capital A with tilde */+ MACRO1( 227, "~a", "\\~a" ), /* Latin Small a with tilde */+ MACRO1( 196, "\"A", "\\\"A" ), /* Latin Capital A with diuresis */+ MACRO1( 228, "\"a", "\\\"a" ), /* Latin Small a with diuresis */+ MACRO1( 197, "AA", "\\AA" ), /* Latin Capital A with ring above */+ MACRO2( 197, "AA", "\\r A", "\\rA" ), /* Latin Capital A with ring above */+ MACRO1( 229, "aa", "\\aa" ), /* Latin Small a with ring above */+ MACRO2( 229, "aa", "\\r a", "\\ra" ), /* Latin Small a with ring above */+ MACRO1( 256, "={A}", "\\=A" ), /* Latin Capital A with macron */+ MACRO1( 257, "={a}", "\\=a" ), /* Latin Small a with macron */+ MACRO2( 258, "u{A}", "\\u A", "\\uA" ), /* Latin Capital A with breve */+ MACRO2( 259, "u{a}", "\\u a", "\\ua" ), /* Latin Small a with breve */+ MACRO2( 260, "k{A}", "\\k A", "\\kA" ), /* Latin Capital A with ogonek */+ MACRO2( 261, "k{a}", "\\k a", "\\ka" ), /* Latin Small a with ogonek */+ MACRO2( 461, "v{A}", "\\v A", "\\vA" ), /* Latin Capital A with caron */+ MACRO2( 462, "v{a}", "\\v a", "\\va" ), /* Latin Small a with caron */ - /* Latin Small a */- { 224, LATEX_MACRO, "`a", { "{\\`a}", "\\`{a}", "\\`a" } }, /* with grave */- { 225, LATEX_MACRO, "'a", { "{\\'a}", "\\'{a}", "\\'a" } }, /* with acute */- { 226, LATEX_MACRO, "^a", { "{\\^a}", "\\^{a}", "\\^a" } }, /* with circumflex */- { 227, LATEX_MACRO, "~a", { "{\\~a}", "\\~{a}", "\\~a" } }, /* with tilde */- { 228, LATEX_MACRO, "\"a", { "{\\\"a}", "\\\"{a}", "\\\"a" } }, /* with diuresis */- { 229, LATEX_MACRO, "aa", { "{\\aa}", "{\\r{a}}", "\\r{a}"} }, /* with ring above */- { 257, LATEX_MACRO, "={a}", { "{\\={a}}", "\\={a}", "\\=a" } }, /* with macron */- { 259, LATEX_MACRO, "u{a}", { "{\\u{a}}", "\\u{a}", "\\u a" } }, /* with breve */- { 261, LATEX_MACRO, "k{a}", { "{\\k{a}}", "\\k{a}", "\\k a" } }, /* with ogonek */- { 462, LATEX_MACRO, "v{a}", { "{\\v{a}}", "\\v{a}", "\\v a" } }, /* with caron */+ MACRO1( 198, "AE", "\\AE" ), /* Latin Capital AE Ligature */+ MACRO1( 230, "ae", "\\ae" ), /* Latin Small ae Ligature */ - { 198, LATEX_MACRO, "AE", { "{\\AE}", "\\AE", NULL } }, /* Latin Capital AE */- { 230, LATEX_MACRO, "ae", { "{\\ae}", "\\ae", NULL } }, /* Latin Small ae */+ MACRO2( 199, "c{C}", "\\c C", "\\cC" ), /* Latin Capital C with cedilla */+ MACRO2( 231, "c{c}", "\\c c", "\\cc" ), /* Latin Small c with cedilla */+ MACRO2( 199, "k{C}", "\\k C", "\\kC" ), /* Latin Capital C with cedilla (actually ogonek) */+ MACRO2( 231, "k{c}", "\\k c", "\\kc" ), /* Latin Small c with cedilla (actually ogonek) */+ MACRO1( 262, "'{C}", "\\'C" ), /* Latin Capital C with acute */+ MACRO1( 263, "'{c}", "\\'c" ), /* Latin Small c with acute */+ MACRO1( 264, "^{C}", "\\^C" ), /* Latin Capital C with circumflex */+ MACRO1( 265, "^{c}", "\\^c" ), /* Latin Small c with circumflex */+ MACRO1( 266, ".{C}", "\\.C" ), /* Latin Capital C with dot above */+ MACRO1( 267, ".{c}", "\\.c" ), /* Latin Small c with dot above */+ MACRO2( 268, "v{C}", "\\v C", "\\vC" ), /* Latin Capital C with caron (hacek) */+ MACRO2( 269, "v{c}", "\\v c", "\\vc" ), /* Latin Small c with caron (hacek) */ - /* Latin Capital C */- { 199, LATEX_MACRO, "c{C}", { "{\\c{C}}", "\\c{C}", "\\c c" } }, /* with cedilla */- { 262, LATEX_MACRO, "'{C}", { "{\\'{C}}", "\\'{C}", "\\'C" } }, /* with acute */- { 264, LATEX_MACRO, "^{C}", { "{\\^{C}}", "\\^{C}", "\\^C" } }, /* with circumflex */- { 266, LATEX_MACRO, ".{C}", { "{\\.{C}}", "\\.{C}", "\\.C" } }, /* with dot above */- { 268, LATEX_MACRO, "v{C}", { "{\\v{C}}", "\\v{C}", "\\v C" } }, /* with caron (hacek) */+ MACRO2( 270, "v{D}", "\\v D", "\\vD" ), /* Latin Capital D with caron */+ MACRO2( 271, "v{d}", "\\v d", "\\vd" ), /* Latin Small d with caron */+ MACRO1( 272, "DJ", "\\DJ" ), /* Latin Capital D with stroke */+ MACRO1( 273, "dj", "\\dj" ), /* Latin Small d with stroke */ - /* Latin Small c */- { 231, LATEX_MACRO, "c{c}", { "{\\c{c}}", "\\c{c}", "\\c C" } }, /* with cedilla*/- { 263, LATEX_MACRO, "'{c}", { "{\\'{c}}", "\\'{c}", "\\'c" } }, /* with acute */- { 265, LATEX_MACRO, "^{c}", { "{\\^{c}}", "\\^{c}", "\\^c" } }, /* with circumflex */- { 267, LATEX_MACRO, ".{c}", { "{\\.{c}}", "\\.{c}", "\\.c" } }, /* with dot above */- { 269, LATEX_MACRO, "v{c}", { "{\\v{c}}", "\\v{c}", "\\v c" } }, /* with caron (hacek) */+ MACRO1( 200, "`E", "\\`E" ), /* Latin Capital E with grave */+ MACRO1( 232, "`e", "\\`e" ), /* Latin Small e with grave */+ MACRO1( 201, "'E", "\\'E" ), /* Latin Capital E with acute */+ MACRO1( 233, "'e", "\\'e" ), /* Latin Small e with acute */+ MACRO1( 202, "^E", "\\^E" ), /* Latin Capital E with circumflex */+ MACRO1( 234, "^e", "\\^e" ), /* Latin Small e with circumflex */+ MACRO1( 203, "\"E", "\\\"E" ), /* Latin Capital E with diuresis */+ MACRO1( 235, "\"e", "\\\"e" ), /* Latin Small e with diuresis */+ MACRO1( 274, "={E}", "\\=E" ), /* Latin Capital E with macron */+ MACRO1( 275, "={e}", "\\=e" ), /* Latin Small e with macron */+ MACRO2( 276, "u{E}", "\\u E", "\\uE" ), /* Latin Capital E with breve */+ MACRO2( 277, "u{e}", "\\u e", "\\ue" ), /* Latin Small e with breve */+ MACRO1( 278, ".{E}", "\\.E" ), /* Latin Capital E with dot above */+ MACRO1( 279, ".{e}", "\\.e" ), /* Latin Small e with dot above */+ MACRO2( 280, "k{E}", "\\k E", "\\kE" ), /* Latin Capital E with ogonek */+ MACRO2( 281, "k{e}", "\\k e", "\\ke" ), /* Latin Small e with ogonek */+ MACRO2( 282, "v{E}", "\\v E", "\\vE" ), /* Latin Capital E with caron */+ MACRO2( 283, "v{e}", "\\v e", "\\ve" ), /* Latin Small e with caron */ - /* Latin Capital D */- { 270, LATEX_MACRO, "v{D}", { "{\\v{D}}", "\\v{D}", "\\v D" } }, /* with caron */- { 272, LATEX_MACRO, "DJ", { "{\\DJ}", NULL, NULL } }, /* with stroke */+ MACRO1( 284, "^{G}", "\\^G" ), /* Latin Capital G with circumflex */+ MACRO1( 285, "^{g}", "\\^g" ), /* Latin Small g with circumflex */+ MACRO2( 286, "u{G}", "\\u G", "\\uG" ), /* Latin Capital G with breve */+ MACRO2( 287, "u{g}", "\\u g", "\\ug" ), /* Latin Small g with breve */+ MACRO1( 288, ".{G}", "\\.G" ), /* Latin Capital G with dot above */+ MACRO1( 289, ".{g}", "\\.g" ), /* Latin Small g with dot above */+ MACRO2( 290, "c{G}", "\\c G", "\\cG" ), /* Latin Capital G with cedilla */+ MACRO2( 291, "c{g}", "\\c g", "\\cg" ), /* Latin Small g with cedilla */+ MACRO2( 486, "v{G}", "\\v G", "\\vG" ), /* Latin Capital G with caron */+ MACRO2( 487, "v{g}", "\\v g", "\\vg" ), /* Latin Small g with caron */+ MACRO1( 500, "'{G}", "\\'G" ), /* Latin Capital G with acute */+ MACRO1( 501, "'{g}", "\\'g" ), /* Latin Small g with acute */ - /* Latin Small d */- { 271, LATEX_MACRO, "v{d}", { "{\\v{d}}", "\\v{d}", "\\v d" } }, /* with caron */- { 273, LATEX_MACRO, "dj", { "{\\dj}", NULL, NULL } }, /* with stroke */+ MACRO1( 292, "^{H}", "\\^H" ), /* Latin Capital H with circumflex */+ MACRO1( 293, "^{h}", "\\^h" ), /* Latin Small h with circumflex */ - /* Latin Capital E */- { 200, LATEX_MACRO, "`E", { "{\\`E}", "\\`{E}", "\\`E" } }, /* with grave */- { 201, LATEX_MACRO, "'E", { "{\\'E}", "\\'{E}", "\\'E" } }, /* with acute */- { 202, LATEX_MACRO, "^E", { "{\\^E}", "\\^{E}", "\\^E" } }, /* with circumflex */- { 203, LATEX_MACRO, "\"E", { "{\\\"E}", "\\\"{E}", "\\\"E" } }, /* with diuresis */- { 274, LATEX_MACRO, "={E}", { "{\\={E}}", "\\={E}", "\\=E" } }, /* with macron */- { 276, LATEX_MACRO, "u{E}", { "{\\u{E}}", "\\u{E}", "\\u E" } }, /* with breve */- { 278, LATEX_MACRO, ".{E}", { "{\\.{E}}", "\\.{E}", "\\.E" } }, /* with dot above */- { 280, LATEX_MACRO, "k{E}", { "{\\k{E}}", "\\k{E}", "\\k E" } }, /* with ogonek */- { 282, LATEX_MACRO, "v{E}", { "{\\v{E}}", "\\v{E}", "\\v E" } }, /* with caron */- - /* Latin Small e */- { 232, LATEX_MACRO, "`e", { "{\\`e}", "\\`{e}", "\\`e" } }, /* with grave */- { 233, LATEX_MACRO, "'e", { "{\\'e}", "\\'{e}", "\\'e" } }, /* with acute */- { 234, LATEX_MACRO, "^e", { "{\\^e}", "\\^{e}", "\\^e" } }, /* with circumflex */- { 235, LATEX_MACRO, "\"e", { "{\\\"e}", "\\\"{e}", "\\\"e" } }, /* with diuresis */- { 275, LATEX_MACRO, "={e}", { "{\\={e}}", "\\={e}", "\\=e" } }, /* with macron */- { 277, LATEX_MACRO, "u{e}", { "{\\u{e}}", "\\u{e}", "\\u e" } }, /* with breve */- { 279, LATEX_MACRO, ".{e}", { "{\\.{e}}", "\\.{e}", "\\.e" } }, /* with dot above */- { 281, LATEX_MACRO, "k{e}", { "{\\k{e}}", "\\k{e}", "\\k e" } }, /* with ogonek */- { 283, LATEX_MACRO, "v{e}", { "{\\v{e}}", "\\v{e}", "\\v e" } }, /* with caron */+ MACRO1( 204, "`I", "\\`I" ), /* Latin Capital I with grave */+ MACRO2( 236, "`{\\i}", "\\`\\i", "\\`i" ), /* Latin Small i with grave */+ MACRO1( 205, "'I", "\\'I" ), /* Latin Capital I with acute */+ MACRO2( 237, "'{\\i}", "\\'\\i", "\\'i" ), /* Latin Small i with acute */+ MACRO1( 206, "^I", "\\^I" ), /* Latin Capital I with circumflex */+ MACRO2( 238, "^{\\i}", "\\^\\i", "\\^i" ), /* Latin Small i with circumflex */+ MACRO1( 207, "\"I", "\\\"I" ), /* Latin Capital I with diuresis */+ MACRO2( 239, "\"{\\i}", "\\\"\\i", "\\\"i" ), /* Latin Small i with diuresis */+ MACRO1( 296, "~{I}", "\\~I" ), /* Latin Capital I with tilde */+ MACRO2( 297, "`{\\i}", "\\~\\i", "\\~i" ), /* Latin Small i with tilde */+ MACRO1( 298, "={I}", "\\=I" ), /* Latin Capital I with macron */+ MACRO2( 299, "={\\i}", "\\=\\i", "\\=i" ), /* Latin Small i with macron */+ MACRO2( 300, "u{I}", "\\u I", "\\uI" ), /* Latin Capital I with breve */+ MACRO2( 301, "u{\\i}", "\\u\\i", "\\ui" ), /* Latin Small i with breve */+ MACRO2( 302, "k{I}", "\\k I", "\\kI" ), /* Latin Capital I with ogonek */+ MACRO2( 303, "k{i}", "\\k i", "\\ki" ), /* Latin Small i with ogonek */+ MACRO1( 304, ".{I}", "\\.I" ), /* Latin Capital I with dot above */+ MACRO1( 305, "i", "\\i" ), /* Latin Small i without dot above */+ MACRO2( 463, "v{I}", "\\v I", "\\vI" ), /* Latin Capital I with caron */+ MACRO2( 464, "v{\\i}", "\\v\\i", "\\vi" ), /* Latin Small i with caron */ - /* Latin Capital G */- { 284, LATEX_MACRO, "^{G}", { "{\\^{G}}", "\\^{G}", "\\^G" } }, /* with circumflex */- { 286, LATEX_MACRO, "u{G}", { "{\\u{G}}", "\\u{G}", "\\u G" } }, /* with breve */- { 288, LATEX_MACRO, ".{G}", { "{\\.{G}}", "\\.{G}", "\\.G" } }, /* with dot above */- { 290, LATEX_MACRO, "c{G}", { "{\\c{G}}", "\\c{G}", "\\c G" } }, /* with cedilla */- { 486, LATEX_MACRO, "v{G}", { "{\\v{G}}", "\\v{G}", "\\v G" } }, /* with caron */- { 500, LATEX_MACRO, "'{G}", { "{\\'{G}}", "\\'{G}", "\\'G" } }, /* with acute */+ MACRO1( 308, "^{J}", "\\^J" ), /* Latin Capital J with circumflex */+ MACRO1( 309, "^{j}", "\\^j" ), /* Latin Small j with circumflex */ - /* Latin Small g */- { 285, LATEX_MACRO, "^{g}", { "{\\^{g}}", "\\^{g}", "\\^g" } }, /* with circumflex */- { 287, LATEX_MACRO, "u{g}", { "{\\u{g}}", "\\u{g}", "\\u g" } }, /* with breve */- { 289, LATEX_MACRO, ".{g}", { "{\\.{g}}", "\\.{g}", "\\.g" } }, /* with dot above */- { 291, LATEX_MACRO, "c{g}", { "{\\c{g}}", "\\c{g}", "\\c g" } }, /* with cedilla */- { 487, LATEX_MACRO, "v{g}", { "{\\v{g}}", "\\v{g}", "\\v g" } }, /* with caron */- { 501, LATEX_MACRO, "'{g}", { "{\\'{g}}", "\\'{g}", "\\'g" } }, /* with acute */+ MACRO2( 310, "c{K}", "\\c K", "\\cK" ), /* Latin Capital K with cedilla */+ MACRO2( 311, "c{k}", "\\c k", "\\ck" ), /* Latin Small k with cedilla */+ MACRO2( 488, "v{K}", "\\v K", "\\vK" ), /* Latin Capital K with caron */+ MACRO2( 489, "v{k}", "\\v k", "\\vk" ), /* Latin Small k with caron */ - /* Latin Capital H */- { 292, LATEX_MACRO, "^{H}", { "{\\^{H}}", "\\^{H}", "\\^H" } }, /* with circumflex */-/* { 294, LATEX_MACRO, "", { NULL, NULL, NULL } },*//* with stroke */+ MACRO1( 313, "'{L}", "\\'L" ), /* Latin Capital L with acute */+ MACRO1( 314, "'{l}", "\\'l" ), /* Latin Small l with acute */+ MACRO2( 315, "c{L}", "\\c L", "\\cL" ), /* Latin Capital L with cedilla */+ MACRO2( 316, "c{l}", "\\c l", "\\cl" ), /* Latin Small l with cedilla */+ MACRO2( 317, "v{L}", "\\v L", "\\vL" ), /* Latin Capital L with caron */+ MACRO2( 318, "v{l}", "\\v l", "\\vl" ), /* Latin Small l with caron */+ MACRO1( 319, "{L\\hspace{-0.35em}$\\cdot$}", "L\\hspace-0.35em\\cdot" ), /* Latin Capital L with middle dot */+ MACRO1( 320, "{l$\\cdot$}", "l\\cdot" ), /* Latin Small l with middle dot */+ MACRO1( 321, "L", "\\L" ), /* Latin Capital L with stroke */+ MACRO1( 322, "l", "\\l" ), /* Latin Small l with stroke */ - /* Latin Capital h */- { 293, LATEX_MACRO, "^{h}", { "{\\^{h}}", "\\^{h}", "\\^h" } }, /* with circumflex */-/* { 295, LATEX_MACRO, "", { NULL, NULL, NULL } },*//* with stroke */+ MACRO1( 209, "~{N}", "\\~N" ), /* Latin Capital N with tilde */+ MACRO1( 241, "~{n}", "\\~n" ), /* Latin Small n with tilde */+ MACRO1( 323, "'{N}", "\\'N" ), /* Latin Capital N with acute */+ MACRO1( 324, "'{n}", "\\'n" ), /* Latin Small n with acute */+ MACRO2( 325, "c{N}", "\\c N", "\\cN" ), /* Latin Capital N with cedilla */+ MACRO2( 326, "c{n}", "\\c n", "\\cn" ), /* Latin Small n with cedilla */+ MACRO2( 327, "v{N}", "\\v N", "\\vN" ), /* Latin Capital N with caron */+ MACRO2( 328, "v{n}", "\\v n", "\\vn" ), /* Latin Small n with caron */+ MACRO1( 329, "n", "\\n" ), /* Latin Small n preceeded by apostrophe */ - /* Latin Capital I */- { 204, LATEX_MACRO, "`I", { "{\\`I}", "\\`{I}", "\\`I" } }, /* with grave */- { 205, LATEX_MACRO, "'I", { "{\\'I}", "\\'{I}", "\\'I" } }, /* with acute */- { 206, LATEX_MACRO, "^I", { "{\\^I}", "\\^{I}", "\\^I" } }, /* with circumflex */- { 207, LATEX_MACRO, "\"I", { "{\\\"I}", "\\\"{I}", "\\\"I" } }, /* with diuresis */- { 296, LATEX_MACRO, "~{I}", { "{\\~{I}}", "\\~{I}", "\\~I" } }, /* with tilde */- { 298, LATEX_MACRO, "={I}", { "{\\={I}}", "\\={I}", "\\=I" } }, /* with macron */- { 300, LATEX_MACRO, "u{I}", { "{\\u{I}}", "\\u{I}", "\\u I" } }, /* with breve */- { 302, LATEX_MACRO, "k{I}", { "{\\k{I}}", "\\k{I}", "\\k I" } }, /* with ogonek */- { 304, LATEX_MACRO, ".{I}", { "{\\.{I}}", "\\.{I}", "\\. I" } }, /* with dot above */- { 463, LATEX_MACRO, "v{I}", { "{\\v{I}}", "\\v{I}", "\\v I" } }, /* with caron */+ MACRO1( 210, "`O", "\\`O" ), /* Latin Capital O with grave */+ MACRO1( 242, "`o", "\\`o" ), /* Latin Small o with grave */+ MACRO1( 211, "'O", "\\'O" ), /* Latin Capital O with acute */+ MACRO1( 243, "'o", "\\'o" ), /* Latin Small o with acute */+ MACRO1( 212, "^O", "\\^O" ), /* Latin Capital O with circumflex */+ MACRO1( 244, "^o", "\\^o" ), /* Latin Small o with circumflex */+ MACRO1( 213, "~O", "\\~O" ), /* Latin Capital O with tilde */+ MACRO1( 245, "~o", "\\~o" ), /* Latin Small o with tilde */+ MACRO1( 214, "\"O", "\\\"O" ), /* Latin Capital O with diaeresis */+ MACRO1( 246, "\"o", "\\\"o" ), /* Latin Small o with diaeresis */+ MACRO1( 216, "O", "\\O" ), /* Latin Capital O with stroke */+ MACRO1( 248, "o", "\\o" ), /* Latin Small o with stroke */+ MACRO1( 332, "={O}", "\\=O" ), /* Latin Capital O with macron */+ MACRO1( 333, "={o}", "\\=o" ), /* Latin Small o with macron */+ MACRO2( 334, "u{O}", "\\u O", "\\uO" ), /* Latin Capital O with breve */+ MACRO2( 335, "u{o}", "\\u o", "\\uo" ), /* Latin Small o with breve */+ MACRO2( 336, "H{O}", "\\H O", "\\HO" ), /* Latin Capital O with double acute */+ MACRO2( 337, "H{o}", "\\H o", "\\Ho" ), /* Latin Small o with double acute */+ MACRO2( 465, "v{O}", "\\v O", "\\vO" ), /* Latin Capital O with caron */+ MACRO2( 466, "v{o}", "\\v o", "\\vo" ), /* Latin Small o with caron */+ MACRO2( 490, "k{O}", "\\k O", "\\kO" ), /* Latin Capital O with ogonek */+ MACRO2( 491, "k{o}", "\\k o", "\\ko" ), /* Latin Small o with ogonek */ - /* Latin Small i */- { 236, LATEX_MACRO, "`i", { "{\\`i}", "\\`{i}", "\\`i" } }, /* with grave */- { 237, LATEX_MACRO, "'i", { "{\\'i}", "\\'{i}", "\\'i" } }, /* with acute */- { 238, LATEX_MACRO, "^i", { "{\\^i}", "\\^{i}", "\\^i" } }, /* with circumflex */- { 239, LATEX_MACRO, "\"i", { "{\\\"i}", "\\\"{i}", "\\\"i" } }, /* with diuresis */- { 303, LATEX_MACRO, "k{i}", { "{\\k{i}}", "\\k{i}", "\\k i" } }, /* with ogonek */- /* Latex "\i" has no dot on "i" */- { 305, LATEX_MACRO, "i", { "{\\i}", "\\i{}", NULL } }, /* without dot above */- { 236, LATEX_MACRO, "`{\\i}", { "{\\`\\i}", "\\`{\\i}", "\\`\\i" } }, /* with grave */- { 237, LATEX_MACRO, "'{\\i}", { "{\\'\\i}", "\\'{\\i}", "\\'\\i" } }, /* with acute */- { 238, LATEX_MACRO, "^{\\i}", { "{\\^\\i}", "\\^{\\i}", "\\^\\i" } }, /* with circumflex */- { 239, LATEX_MACRO, "\"{\\i}", { "{\\\"\\i}", "\\\"{\\i}","\\\"\\i" } }, /* with diuresis */- { 297, LATEX_MACRO, "`{\\i}", { "{\\~{\\i}}", "\\~{\\i}", "\\~\\i{}" } }, /* with tilde */- { 299, LATEX_MACRO, "={\\i}", { "{\\={\\i}}", "\\={\\i}", "\\=\\i{}" } }, /* with macron */- { 301, LATEX_MACRO, "u{\\i}", { "{\\u{\\i}}", "\\u{\\i}", "\\u\\i{}" } }, /* with breve */- { 464, LATEX_MACRO, "v{\\i}", { "{\\v \\i{}}", "\\v \\i{}", NULL } }, /* with caron */+ MACRO1( 338, "OE", "\\OE" ), /* Latin Capital OE Ligature */+ MACRO1( 339, "oe", "\\oe" ), /* Latin Small oe Ligature */ -/* { 306, LATEX_MACRO, "", { NULL, NULL, NULL } },*/ /* Latin Capital IJ */-/* { 307, LATEX_MACRO, "", { NULL, NULL, NULL } },*/ /* Latin Small ij */+ MACRO1( 340, "'R", "\\'R" ), /* Latin Capital R with acute */ + MACRO1( 341, "'r", "\\'r" ), /* Latin Small r with acute */+ MACRO2( 342, "c{R}", "\\c R", "\\cR" ), /* Latin Capital R with cedilla */+ MACRO2( 343, "c{r}", "\\c r", "\\cr" ), /* Latin Small r with cedilla */+ MACRO2( 344, "v{R}", "\\v R", "\\vR" ), /* Latin Capital R with caron */+ MACRO2( 345, "v{r}", "\\v r", "\\vr" ), /* Latin Small r with caron */ - /* Latin Capital J */- { 308, LATEX_MACRO, "^{J}", { "{\\^{J}}", "\\^{J}", "\\^J" } }, /* with circumflex */+ MACRO1( 346, "'{S}", "\\'S" ), /* Latin Capital S with acute */+ MACRO1( 347, "'{s}", "\\'s" ), /* Latin Small s with acute */+ MACRO1( 348, "^{S}", "\\^S" ), /* Latin Capital S with circumflex */+ MACRO1( 349, "^{s}", "\\^s" ), /* Latin Small s with circumflex */+ MACRO2( 350, "c{S}", "\\c S", "\\cS" ), /* Latin Capital S with cedilla */+ MACRO2( 351, "c{s}", "\\c s", "\\cs" ), /* Latin Small s with cedilla */+ MACRO2( 352, "v{S}", "\\v S", "\\vS" ), /* Latin Capital S with caron */+ MACRO2( 353, "v{s}", "\\v s", "\\vs" ), /* Latin Small s with caron */ - /* Latin Small j */- { 309, LATEX_MACRO, "^{j}", { "{\\^{j}}", "\\^{j}", "\\^j" } }, /* with circumflex */+ MACRO1( 223, "ss", "\\ss" ), /* German sz Ligature, "sharp s" */ - /* Latin Capital K */- { 310, LATEX_MACRO, "c{K}", { "{\\c{K}}", "\\c{K}", "\\c K" } }, /* with cedilla */- { 488, LATEX_MACRO, "v{K}", { "{\\v{K}}", "\\v{K}", "\\v K" } }, /* with caron */+ MACRO2( 354, "c{T}", "\\c T", "\\cT" ), /* Latin Capital T with cedilla */+ MACRO2( 355, "c{t}", "\\c t", "\\ct" ), /* Latin Small t with cedilla */+ MACRO2( 356, "v{T}", "\\v T", "\\vT" ), /* Latin Capital T with caron */+ MACRO2( 357, "v{t}", "\\v t", "\\vt" ), /* Latin Small t with caron */ - /* Latin Small k */- { 311, LATEX_MACRO, "c{k}", { "{\\c{k}}", "\\c{k}", "\\c k" } }, /* with cedilla */- { 489, LATEX_MACRO, "v{k}", { "{\\v{k}}", "\\v{k}", "\\v k" } }, /* with caron */+ MACRO1( 217, "`U", "\\`U" ), /* Latin Capital U with grave */+ MACRO1( 249, "`u", "\\`u" ), /* Latin Small u with grave */+ MACRO1( 218, "'U", "\\'U" ), /* Latin Capital U with acute */+ MACRO1( 250, "'u", "\\'u" ), /* Latin Small u with acute */+ MACRO1( 219, "^U", "\\^U" ), /* Latin Capital U with circumflex */+ MACRO1( 251, "^u", "\\^u" ), /* Latin Small u with circumflex */+ MACRO1( 220, "\"U", "\\\"U" ), /* Latin Capital U with diaeresis */+ MACRO1( 252, "\"u", "\\\"u" ), /* Latin Small u with diaeresis */+ MACRO1( 360, "~{U}", "\\~U" ), /* Latin Capital U with tilde */+ MACRO1( 361, "~{u}", "\\~u" ), /* Latin Small u with tilde */+ MACRO1( 362, "={U}", "\\=U" ), /* Latin Capital U with macron */+ MACRO1( 363, "={u}", "\\=u" ), /* Latin Small u with macron */+ MACRO2( 364, "u{U}", "\\u U", "\\uU" ), /* Latin Capital U with breve */+ MACRO2( 365, "u{u}", "\\u u", "\\uu" ), /* Latin Small u with breve */+ MACRO2( 366, "r{U}", "\\r U", "\\rU" ), /* Latin Capital U with ring above */+ MACRO2( 367, "r{u}", "\\r u", "\\ru" ), /* Latin Small u with ring above */+ MACRO2( 368, "H{U}", "\\H U", "\\HU" ), /* Latin Capital U with double acute */+ MACRO2( 369, "H{u}", "\\H u", "\\Hu" ), /* Latin Small u with double acute */+ MACRO2( 370, "k{U}", "\\k U", "\\kU" ), /* Latin Capital U with ogonek */+ MACRO2( 371, "k{u}", "\\k u", "\\ku" ), /* Latin Small u with ogonek */+ MACRO2( 467, "v{U}", "\\v U", "\\vU" ), /* Latin Capital U with caron */+ MACRO2( 468, "v{u}", "\\v u", "\\vu" ), /* Latin Small u with caron */ - /* Latin Capital L */- { 313, LATEX_MACRO, "'{L}", { "{\\'{L}}", "\\'{L}", "\\'L" } }, /* with acute */- { 315, LATEX_MACRO, "c{L}", { "{\\c{L}}", "\\c{L}", "\\c L" } }, /* with cedilla */- { 317, LATEX_MACRO, "v{L}", { "{\\v{L}}", "\\v{l}", "\\v L" } }, /* with caron */- { 319, LATEX_COMBO, "{L\\hspace{-0.35em}$\\cdot$}", { "{L\\hspace{-0.35em}$\\cdot$}","L\\hspace{-0.35em}$\\cdot$", NULL } }, /* with middle dot */- { 321, LATEX_MACRO, "L", { "{\\L}", "{\\L{}}", "\\L{}" } }, /* with stroke */+ MACRO1( 372, "^{W}", "\\^W" ), /* Latin Capital W with circumflex */+ MACRO1( 373, "^{w}", "\\^w" ), /* Latin Small w with circumflex */ - /* Latin Small l */- { 314, LATEX_MACRO, "'{l}", { "{\\'{l}}", "\\'{l}", "\\'l" } }, /* with acute */- { 316, LATEX_MACRO, "c{l}", { "{\\c{l}}", "\\c{l}", "\\c l" } }, /* with cedilla */- { 318, LATEX_MACRO, "v{l}", { "{\\v{l}}", "\\v{l}", "\\v l" } }, /* with caron */- { 320, LATEX_COMBO, "{l$\\cdot$}", { "{l$\\cdot$}","l$\\cdot$", NULL } }, /* with middle dot */- { 322, LATEX_MACRO, "l", { "{\\l}", "{\\l{}}", "\\l{}" } }, /* with stroke */+ MACRO1( 221, "'{Y}", "\\'Y" ), /* Latin Capital Y with acute */+ MACRO1( 253, "'y", "\\'y" ), /* Latin Small y with acute */+ MACRO1( 374, "^{Y}", "\\^Y" ), /* Latin Capital Y with circumflex */+ MACRO1( 375, "^{y}", "\\^y" ), /* Latin Small y with circumflex */+ MACRO1( 376, "\"{Y}", "\\\"Y" ), /* Latin Capital Y with diaeresis */+ MACRO1( 255, "\"y", "\\\"y" ), /* Latin Small y with diaeresis */ - /* Latin Capital N */- { 209, LATEX_MACRO, "~{N}", { "{\\~{N}}", "\\~{N}", "\\~N" } }, /* with tilde */- { 323, LATEX_MACRO, "'{N}", { "{\\'{N}}", "\\'{N}", "\\'N" } }, /* with acute */- { 325, LATEX_MACRO, "c{N}", { "{\\c{N}}", "\\c{N}", "\\c N" } }, /* with cedilla */- { 327, LATEX_MACRO, "v{N}", { "{\\v{N}}", "\\v{N}", "\\v N" } }, /* with caron */+ MACRO1( 377, "'{Z}", "\\'Z" ), /* Latin Capital Z with acute */+ MACRO1( 378, "'{z}", "\\'z" ), /* Latin Small z with acute */+ MACRO1( 379, ".{Z}", "\\.Z" ), /* Latin Capital Z with dot above */+ MACRO1( 380, ".{z}", "\\.z" ), /* Latin Small z with dot above */+ MACRO2( 381, "v{Z}", "\\v Z", "\\vZ" ), /* Latin Capital Z with caron */+ MACRO2( 382, "v{z}", "\\v z", "\\vz" ), /* Latin Small z with caron */ - /* Latin Small n */- { 241, LATEX_MACRO, "~{n}", { "{\\~{n}}", "\\~{n}", "\\~n" } }, /* with tilde */- { 324, LATEX_MACRO, "'{n}", { "{\\'{n}}", "\\'{n}", "\\'n" } }, /* with acute */- { 326, LATEX_MACRO, "c{n}", { "{\\c{n}}", "\\c{n}", "\\c N" } }, /* with cedilla */- { 328, LATEX_MACRO, "v{n}", { "{\\v{n}}", "\\v{n}", "\\v n" } }, /* with caron */- { 329, LATEX_MACRO, "n", { "\\n", NULL, NULL } }, /* preceeded by apostrophe */- - /* Latin Capital O */- { 210, LATEX_MACRO, "`O", { "{\\`O}", "\\`{O}", "\\`O" } }, /* with grave */- { 211, LATEX_MACRO, "'O", { "{\\'O}", "\\'{O}", "\\'O" } }, /* with acute */- { 212, LATEX_MACRO, "^O", { "{\\^O}", "\\^{O}", "\\^O" } }, /* with circumflex */- { 213, LATEX_MACRO, "~O", { "{\\~O}", "\\~{O}", "\\~O" } }, /* with tilde */- { 214, LATEX_MACRO, "\"O", { "{\\\"O}", "\\\"{O}", "\\\"O" } }, /* with diaeresis */- { 216, LATEX_MACRO, "O", { "{\\O}", "\\O", NULL } }, /* with stroke */- { 332, LATEX_MACRO, "={O}", { "{\\={O}}", "\\={O}", "\\=O" } }, /* with macron */- { 334, LATEX_MACRO, "u{O}", { "{\\u{O}}", "\\u{O}", "\\u O" } }, /* with breve */- { 336, LATEX_MACRO, "H{O}", { "{\\H{O}}", "\\H{O}", "\\H O" } }, /* with double acute */- { 465, LATEX_MACRO, "v{O}", { "{\\v{O}}", "\\v{O}", "\\v O" } }, /* with caron */- { 490, LATEX_MACRO, "k{O}", { "{\\k{O}}", "\\k{O}", "\\k O" } }, /* with ogonek */+ MATH1 ( 8203, "\\null", "\\null" ), /* No space ​ Needs to be before \nu*/ - /* Latin Small o */- { 242, LATEX_MACRO, "`o", { "{\\`o}", "\\`{o}", "\\`o" } }, /* with grave */- { 243, LATEX_MACRO, "'o", { "{\\'o}", "\\'{o}", "\\'o" } }, /* with acute */- { 244, LATEX_MACRO, "^o", { "{\\^o}", "\\^{o}", "\\^o" } }, /* with circumflex */- { 245, LATEX_MACRO, "~o", { "{\\~o}", "\\~{o}", "\\~o" } }, /* with tilde */- { 246, LATEX_MACRO, "\"o", { "{\\\"o}", "\\\"{o}", "\\\"o" } }, /* with diaeresis */- { 248, LATEX_MACRO, "o", { "{\\o}", "\\o", NULL } }, /* with stroke */- { 333, LATEX_MACRO, "={o}", { "{\\={o}}", "\\={o}", "\\=o" } }, /* with macron */- { 335, LATEX_MACRO, "u{o}", { "{\\u{o}}", "\\u{o}", "\\u o" } }, /* with breve */- { 337, LATEX_MACRO, "H{o}", { "{\\H{o}}", "\\H{o}", "\\H o" } }, /* with double acute */- { 466, LATEX_MACRO, "v{o}", { "{\\v{o}}", "\\v{o}", "\\v o" } }, /* with caron */- { 491, LATEX_MACRO, "k{o}", { "{\\k{o}}", "\\k{o}", "\\k o" } }, /* with ogonek */+ MATH1 ( 913, "\\Alpha", "\\Alpha" ), /*GREEK CAPITAL LETTER ALPHA*/+ MATH1 ( 914, "\\Beta", "\\Beta" ), /*GREEK CAPITAL LETTER BETA*/+ MATH1 ( 915, "\\Gamma", "\\Gamma" ), /*GREEK CAPITAL LETTER GAMMA*/+ MATH1 ( 916, "\\Delta", "\\Delta" ), /*GREEK CAPITAL LETTER DELTA*/+ MATH1 ( 917, "\\Epsilon", "\\Epsilon" ), /*GREEK CAPITAL LETTER EPSILON*/+ MATH1 ( 918, "\\Zeta", "\\Zeta" ), /*GREEK CAPITAL LETTER ZETA*/+ MATH1 ( 919, "\\Eta", "\\Eta" ), /*GREEK CAPITAL LETTER ETA*/+ MATH1 ( 920, "\\Theta", "\\Theta" ), /*GREEK CAPITAL LETTER THETA*/+ MATH1 ( 921, "\\Iota", "\\Iota" ), /*GREEK CAPITAL LETTER IOTA*/+ MATH1 ( 922, "\\Kappa", "\\Kappa" ), /*GREEK CAPITAL LETTER KAPPA*/+ MATH1 ( 923, "\\Lambda", "\\Lambda" ), /*GREEK CAPITAL LETTER LAMDA*/+ MATH1 ( 924, "\\Mu", "\\Mu" ), /*GREEK CAPITAL LETTER MU*/+ MATH1 ( 925, "\\Nu", "\\Nu" ), /*GREEK CAPITAL LETTER NU*/+ MATH1 ( 926, "\\Xi", "\\Xi" ), /*GREEK CAPITAL LETTER XI*/+ MATH1 ( 927, "\\Omicron", "\\Omicron" ), /*GREEK CAPITAL LETTER OMICRON*/+ MATH1 ( 928, "\\Pi", "\\Pi" ), /*GREEK CAPITAL LETTER PI*/+ MATH1 ( 929, "\\Rho", "\\Rho" ), /*GREEK CAPITAL LETTER RHO*/+ MATH1 ( 931, "\\Sigma", "\\Sigma" ), /*GREEK CAPITAL LETTER SIGMA*/+ MATH1 ( 932, "\\Tau", "\\Tau" ), /*GREEK CAPITAL LETTER TAU*/+ MATH1 ( 933, "\\Upsilon", "\\Upsilon" ), /*GREEK CAPITAL LETTER UPSILON*/+ MATH1 ( 934, "\\Phi", "\\Phi" ), /*GREEK CAPITAL LETTER PHI*/+ MATH1 ( 935, "\\Chi", "\\Chi" ), /*GREEK CAPITAL LETTER CHI*/+ MATH1 ( 936, "\\Psi", "\\Psi" ), /*GREEK CAPITAL LETTER PSI*/+ MATH1 ( 937, "\\Omega", "\\Omega" ), /*GREEK CAPITAL LETTER OMEGA*/ - { 338, LATEX_MACRO, "OE", { "{\\OE}", "\\OE", NULL } }, /* Latin Capital OE */- { 339, LATEX_MACRO, "oe", { "{\\oe}", "\\oe", NULL } }, /* Latin Small oe */+ MATH1 ( 945, "\\alpha", "\\alpha" ), /*GREEK SMALL LETTER ALPHA*/+ MATH1 ( 946, "\\beta", "\\beta" ), /*GREEK SMALL LETTER BETA*/+ MATH1 ( 947, "\\gamma", "\\gamma" ), /*GREEK SMALL LETTER GAMMA*/+ MATH1 ( 948, "\\delta", "\\delta" ), /*GREEK SMALL LETTER DELTA*/+ MATH1 ( 949, "\\epsilon", "\\epsilon" ), /*GREEK SMALL LETTER EPSILON*/+ MATH1 ( 950, "\\zeta", "\\zeta" ), /*GREEK SMALL LETTER ZETA*/+ MATH1 ( 951, "\\eta", "\\eta" ), /*GREEK SMALL LETTER ETA*/+ MATH1 ( 952, "\\theta", "\\theta" ), /*GREEK SMALL LETTER THETA*/+ MATH1 ( 953, "\\iota", "\\iota" ), /*GREEK SMALL LETTER IOTA*/+ MATH1 ( 954, "\\kappa", "\\kappa" ), /*GREEK SMALL LETTER KAPPA*/+ MATH1 ( 955, "\\lambda", "\\lambda" ), /*GREEK SMALL LETTER LAMDA*/+ MATH1 ( 956, "\\mu", "\\mu" ), /*GREEK SMALL LETTER MU*/+ MATH1 ( 957, "\\nu", "\\nu" ), /*GREEK SMALL LETTER NU*/+ MATH1 ( 958, "\\xi", "\\xi" ), /*GREEK SMALL LETTER XI*/+ MATH1 ( 959, "\\omicron", "\\omicron" ), /*GREEK SMALL LETTER OMICRON*/+ MATH1 ( 960, "\\pi", "\\pi" ), /*GREEK SMALL LETTER PI*/+ MATH1 ( 961, "\\rho", "\\rho" ), /*GREEK SMALL LETTER RHO*/+ MATH1 ( 963, "\\sigma", "\\sigma" ), /*GREEK SMALL LETTER SIGMA*/+ MATH1 ( 964, "\\tau", "\\tau" ), /*GREEK SMALL LETTER TAU*/+ MATH1 ( 965, "\\upsilon", "\\upsilon" ), /*GREEK SMALL LETTER UPSILON*/+ MATH1 ( 966, "\\phi", "\\phi" ), /*GREEK SMALL LETTER PHI*/+ MATH1 ( 967, "\\chi", "\\chi" ), /*GREEK SMALL LETTER CHI*/+ MATH1 ( 968, "\\psi", "\\psi" ), /*GREEK SMALL LETTER PSI*/+ MATH1 ( 969, "\\omega", "\\omega" ), /*GREEK SMALL LETTER OMEGA*/ - /* Latin Capital R */- { 340, LATEX_MACRO, "'R", { "{\\'{R}}", "\\'{R}", "\\'R" } }, /* with acute */- { 342, LATEX_MACRO, "c{R}", { "{\\c{R}}", "\\c{R}", "\\c R" } }, /* with cedilla */- { 344, LATEX_MACRO, "v{R}", { "{\\v{R}}", "\\v{R}", "\\v R" } }, /* with caron */- - /* Latin Small r */- { 341, LATEX_MACRO, "'r", { "{\\'{r}}", "\\'{r}", "\\'r" } }, /* with acute */- { 343, LATEX_MACRO, "c{r}", { "{\\c{r}}", "\\c{r}", "\\c r" } }, /* with cedilla */- { 345, LATEX_MACRO, "v{r}", { "{\\v{r}}", "\\v{r}", "\\v r" } }, /* with caron */+ MACRO2( 181, "textmu", "\\textmu", "\\mu" ), /* 181=micro sign, techically µ */ - /* Latin Capital S */- { 346, LATEX_MACRO, "'{S}", { "{\\'{S}}", "\\'{S}", "\\'S" } }, /* with acute */- { 348, LATEX_MACRO, "^{S}", { "{\\^{S}}", "\\^{S}", "\\^S" } }, /* with circumflex */- { 350, LATEX_MACRO, "c{S}", { "{\\c{S}}", "\\c{S}", "\\c S" } }, /* with cedilla */- { 352, LATEX_MACRO, "v{S}", { "{\\v{S}}", "\\v{S}", "\\v S" } }, /* with caron */+/* Make sure that these don't stomp on other latex things above */ - /* Latin Small s */- { 347, LATEX_MACRO, "'{s}", { "{\\'{s}}", "\\'{s}", "\\'s" } }, /* with acute */- { 349, LATEX_MACRO, "^{s}", { "{\\^{s}}", "\\^{s}", "\\^s" } }, /* with circumflex */- { 351, LATEX_MACRO, "c{s}", { "{\\c{s}}", "\\c{s}", "\\c s" } }, /* with cedilla */- { 353, LATEX_MACRO, "v{s}", { "{\\v{s}}", "\\v{s}", "\\v s" } }, /* with caron */+ COMBO2( 8212, "---", "---", "\\textemdash" ), /* Em-dash — */+ COMBO2( 8211, "--", "--", "\\textendash" ), /* En-dash – */+ MACRO2( 8230, "ldots", "\\ldots", "\\textellipsis" ), /* Ellipsis … */ - /* Latin Capital T */- { 354, LATEX_MACRO, "c{T}", { "{\\c{T}}", "\\c{T}", NULL } }, /* with cedilla */- { 356, LATEX_MACRO, "v{T}", { "{\\v{T}}", "\\v{T}", NULL } }, /* with caron */-/* { 358, LATEX_MACRO, "", { NULL, NULL, NULL } },*//* with stroke */+ COMBO2( 8220, "``", "``", "\\textquotedblleft" ), /* Opening double quote “ */+ COMBO1( 8221, "''", "\"" ), /* Closing double quote ” */+ COMBO2( 8221, "''", "''", "\\textquotedblright" ), /* Closing double quote ” */+ COMBO2( 8216, "`", "`", "\\textquoteleft" ), /* Opening single quote ‘ */+ COMBO2( 8217, "'", "'", "\\textquoteright" ), /* Closing single quote ’ */ - /* Latin Small t */- { 355, LATEX_MACRO, "c{T}", { "{\\c{t}}", "\\c{t}", NULL } }, /* with cedilla */- { 357, LATEX_MACRO, "v{T}", { "{\\v{t}}", "\\v{t}", NULL } }, /* with caron */-/* { 359, LATEX_MACRO, "", { NULL, NULL, NULL } },*//* with stroke */+ MACRO1( 8242, "textasciiacutex", "\\textasciiacutex" ), /* Prime symbol ′ */+ MACRO2( 180, "textasciiacute", "\\textasciiacute", "\\'" ), /* acute accent ´ */+ MACRO1( 8243, "textacutedbl", "\\textacutedbl" ), /* Double prime ″ */+ MACRO2( 8245, "textasciigrave", "\\textasciigrave", "\\`" ), /* Grave accent ‵ */ - { 223, LATEX_MACRO, "ss", { "{\\ss}", "\\ss", NULL } }, /* German sz ligature, "sharp s" */+ MACRO1( 8963, "textasciicircum", "\\textasciicircum" ), /* ⌃ */+ MACRO1( 184, "textasciicedilla", "\\textasciicedilla" ), /* cedilla ¸ */+ MACRO1( 168, "textasciidieresis", "\\textasciidieresis" ), /* dieresis ¨ */+ MACRO1( 175, "textasciimacron", "\\textasciimacron" ), /* macron ¯ */ - /* Latin Capital U */- { 217, LATEX_MACRO, "`U", { "{\\`U}", "\\`{U}", "\\`U" } }, /* with grave */- { 218, LATEX_MACRO, "'U", { "{\\'U}", "\\'{U}", "\\'U" } }, /* with acute */- { 219, LATEX_MACRO, "^U", { "{\\^U}", "\\^{U}", "\\^U" } }, /* with circumflex */- { 220, LATEX_MACRO, "\"U", { "{\\\"U}", "\\\"{U}","\\\"U" } }, /* with diaeresis */- { 360, LATEX_MACRO, "~{U}", { "{\\~{U}}", "\\~{U}", "\\~U" } }, /* with tilde */- { 362, LATEX_MACRO, "={U}", { "{\\={U}}", "\\={U}", "\\=U" } }, /* with macron */- { 364, LATEX_MACRO, "u{U}", { "{\\u{U}}", "\\u{U}", "\\u U" } }, /* with breve */- { 366, LATEX_MACRO, "r{U}", { "{\\r{U}}", "\\r{U}", "\\r U" } }, /* with ring above */- { 368, LATEX_MACRO, "H{U}", { "{\\H{U}}", "\\H{U}", "\\H U" } }, /* with double acute */- { 370, LATEX_MACRO, "k{U}", { "{\\k{U}}", "\\k{U}", "\\k U" } }, /* with ogonek */- { 467, LATEX_MACRO, "v{U}", { "{\\v{U}}", "\\v{U}", "\\v U" } }, /* with caron */+ MACRO1( 8593, "textuparrow", "\\textuparrow" ), /* Up arrow ↑ */+ MACRO1( 8595, "textdownarrow", "\\textdownarrow" ), /* Down arrow ↓ */+ MACRO1( 8594, "textrightarrow", "\\textrightarrow" ), /* Right arrow → */+ MACRO1( 8592, "textleftarrow", "\\textleftarrow" ), /* Left arrow ← */+ MACRO1(12296, "textlangle", "\\textlangle" ), /* L-angle 〈 */+ MACRO1(12297, "textrangle", "\\textrangle" ), /* R-angle 〉 */ - /* Latin Small u */- { 249, LATEX_MACRO, "`u", { "{\\`u}", "\\`{u}", "\\`u" } }, /* with grave */- { 250, LATEX_MACRO, "'u", { "{\\'u}", "\\'{u}", "\\'u" } }, /* with acute */- { 251, LATEX_MACRO, "^u", { "{\\^u}", "\\^{u}", "\\^u" } }, /* with circumflex */- { 252, LATEX_MACRO, "\"u", { "{\\\"u}", "\\\"{u}","\\\"u" } }, /* with diaeresis */- { 361, LATEX_MACRO, "~{u}", { "{\\~{u}}", "\\~{u}", NULL } }, /* with tilde */- { 363, LATEX_MACRO, "={u}", { "{\\={u}}", "\\={u}", "\\=u" } }, /* with macron */- { 365, LATEX_MACRO, "u{u}", { "{\\u{u}}", "\\u{u}", "\\u u" } }, /* with breve */- { 367, LATEX_MACRO, "r{u}", { "{\\r{u}}", "\\r{u}", "\\r u" } }, /* with ring above */- { 369, LATEX_MACRO, "H{u}", { "{\\H{u}}", "\\H{u}", "\\H u" } }, /* with double acute */- { 371, LATEX_MACRO, "k{u}", { "{\\k{u}}", "\\k{u}", "\\k u" } }, /* with ogonek */- { 468, LATEX_MACRO, "v{u}", { "{\\v{u}}", "\\v{u}", "\\v u" } }, /* with caron */+ MACRO1( 166, "textbrokenbar", "\\textbrokenbar" ), /* Broken vertical bar ¦ */+ MACRO2( 167, "textsection", "\\textsection", "\\S" ), /* Section sign, § */+ MACRO2( 170, "textordfeminine", "\\textordfeminine", "^a" ), /* ª */+ MACRO1( 172, "textlnot", "\\textlnot" ), /* Lnot ¬ */+ MACRO1( 182, "textparagraph", "\\textparagraph" ), /* Paragraph sign ¶ */+ MACRO1( 183, "textperiodcentered", "\\textperiodcentered" ), /* Period-centered · */+ MACRO1( 186, "textordmasculine", "\\textordmasculine" ), /* º */+ MACRO1( 8214, "textbardbl", "\\textbardbl" ), /* Double vertical bar ‖ */+ MACRO1( 8224, "textdagger", "\\textdagger" ), /* Dagger † */+ MACRO1( 8225, "textdaggerdbl", "\\textdaggerdbl" ), /* Double dagger &x2021; */+ MACRO1( 8226, "textbullet", "\\textbullet" ), /* Bullet • */+ MACRO1( 8494, "textestimated", "\\textestimated" ), /* Estimated ℮ */+ MACRO1( 9526, "textopenbullet", "\\textopenbullet" ), /* ┶ */ - /* Latin Capital W */- { 372, LATEX_MACRO, "^{W}", { "{\\^{W}}", "\\^{W}", "\\^W" } }, /* with circumflex */+ MACRO1( 8261, "textlquill", "\\textlquill" ), /* Left quill ⁅ */+ MACRO1( 8262, "textrquill", "\\textrquill" ), /* Right quill ⁆ */ - /* Latin Small w */- { 373, LATEX_MACRO, "^{w}", { "{\\^{w}}", "\\^{w}", "\\^w" } }, /* with circumflex */+ MACRO2( 8194, "enspace", "\\enspace", "\\hspace.5em" ), /* En-space   */+ MACRO2( 8195, "emspace", "\\emspace", "\\hspace1em" ), /* Em-space   */+ MACRO1( 8201, "thinspace", "\\thinspace" ), /* Thin space   */+ MACRO1( 8203, "textnospace", "\\textnospace" ), /* No space ​ */+ MACRO1( 9251, "textvisiblespace", "\\textvisiblespace" ), /* Visible space ␣ */ - /* Latin Capital Y */- { 221, LATEX_MACRO, "'{Y}", { "{\\'{Y}}", "\\'{Y}", "\\'Y" } }, /* with acute */- { 374, LATEX_MACRO, "^{Y}", { "{\\^{Y}}", "\\^{Y}", "\\^Y" } }, /* with circumflex */- { 376, LATEX_MACRO, "\"{Y}",{ "{\\\"{Y}}","\\\"{Y}","\\\"Y" } }, /* with diaeresis */+ MACRO1( 215, "texttimes", "\\texttimes" ), /* Multiplication symbol × */+ MACRO1( 247, "textdiv", "\\textdiv" ), /* Division symbol ÷ */+ MACRO1( 177, "textpm", "\\textpm" ), /* Plus-minus character &#B1; */+ MACRO1( 188, "textonequarter", "\\textonequarter" ), /* Vulgar fraction one quarter ¼ */+ MACRO1( 189, "textonehalf", "\\textonehalf" ), /* Vulgar fraction one half ½ */+ MACRO1( 190, "textthreequarters", "\\textthreequarters" ), /* Vulgar fraction three quarters ¾ */+ MACRO1( 8240, "texttenthousand", "\\texttenthousand" ), /* Per thousand sign ‰ */+ MACRO1( 8241, "textpertenthousand", "\\textpertenthousand" ), /* Per ten thousand sign ‱*/+ MACRO1( 8260, "textfractionssolidus", "\\textfractionsolidus" ), /* &x8260 */+ MACRO1( 8451, "textcelcius", "\\textcelcius" ), /* Celcius ℃ */+ MACRO1( 8470, "textnumero", "\\textnumero" ), /* Numero symbol № */+ MACRO1( 8486, "textohm", "\\textohm" ), /* Ohm symbol Ω */+ MACRO1( 8487, "textmho", "\\textmho" ), /* Mho symbol ℧ */+ MACRO1( 8730, "textsurd", "\\textsurd" ), /* √ */ - /* Latin Small y */- { 253, LATEX_MACRO, "'y", { "{\\'y}", "\\'{y}", "\\'y" } }, /* with acute */- { 255, LATEX_MACRO, "\"y", { "{\\\"y}", "\\\"{y}","\\\"y" } }, /* with diaeresis */- { 375, LATEX_MACRO, "^{y}", { "{\\^{y}}","\\^{y}", "\\^y" } }, /* with circumflex */+ MACRO2( 185, "textonesuperior", "\\textonesuperior", "^1" ), /*Superscript 1 ¹ */+ MACRO2( 178, "texttwosuperior", "\\texttwosuperior", "^2" ), /*Superscript 2 ² */+ MACRO2( 179, "textthreesuperior", "\\textthreesuperior", "^3" ), /*Superscript 3 ³ */ - /* Latin Capital Z */- { 377, LATEX_MACRO, "'{Z}", { "{\\'{Z}}","\\'{Z}", "\\'Z" } }, /* with acute */- { 379, LATEX_MACRO, ".{Z}", { "{\\.{Z}}","\\.{Z}", "\\.Z" } }, /* with dot above */- { 381, LATEX_MACRO, "v{Z}", { "{\\v{Z}}","\\v{Z}", "\\v Z" } }, /* with caron */+ MATH1 ( 8308, "^4", "^4" ), /*Superscript 4 U+2074*/+ MATH1 ( 8309, "^5", "^5" ), /*Superscript 5 U+2075*/+ MATH1 ( 8310, "^6", "^6" ), /*Superscript 6 U+2076*/+ MATH1 ( 8311, "^7", "^7" ), /*Superscript 7 U+2077*/+ MATH1 ( 8312, "^8", "^8" ), /*Superscript 8 U+2078*/+ MATH1 ( 8313, "^9", "^9" ), /*Superscript 9 U+2079*/ - /* Latin Small z */- { 378, LATEX_MACRO, "'{z}", { "{\\'{z}}","\\'{z}", "\\'z" } }, /* with acute */- { 380, LATEX_MACRO, ".{z}", { "{\\.{z}}","\\.{z}", "\\.z" } }, /* with dot above */- { 382, LATEX_MACRO, "v{z}", { "{\\v{z}}","\\v{z}", "\\v z" } }, /* with caron */+ MATH1 ( 8314, "^+", "^+" ), /*Superscript - U+207A*/+ MATH1 ( 8315, "^-", "^-" ), /*Superscript - U+207B*/+ MATH1 ( 8316, "^=", "^=" ), /*Superscript = U+207C*/+ MATH1 ( 8317, "^(", "^(" ), /*Superscript ) U+207D*/+ MATH1 ( 8318, "^)", "^)" ), /*Superscript ) U+207E*/+ MATH1 ( 8319, "^n", "^n" ), /*Superscript n U+207F*/ + MATH1 ( 8320, "_0", "_0" ), /*Subscript 0 U+2080*/+ MATH1 ( 8321, "_1", "_1" ), /*Subscript 1 U+2081*/+ MATH1 ( 8322, "_2", "_2" ), /*Subscript 2 U+2082*/+ MATH1 ( 8323, "_3", "_3" ), /*Subscript 3 U+2083*/+ MATH1 ( 8324, "_4", "_4" ), /*Subscript 4 U+2084*/+ MATH1 ( 8325, "_5", "_5" ), /*Subscript 5 U+2085*/+ MATH1 ( 8326, "_6", "_6" ), /*Subscript 6 U+2086*/+ MATH1 ( 8327, "_7", "_7" ), /*Subscript 7 U+2087*/+ MATH1 ( 8328, "_8", "_8" ), /*Subscript 8 U+2088*/+ MATH1 ( 8329, "_9", "_9" ), /*Subscript 9 U+2089*/ - /* Needs to be before \nu */- { 8203,LATEX_MATH, "null", { "$\\null$", "\\null", NULL } }, /* No space ​ */+ MATH2( 183, "\\cdot", "\\cdot", "^." ),+ MATH1( 2192, "\\to", "\\to" ), - { 913, LATEX_MATH, "Alpha", { "$\\Alpha$", "\\Alpha", NULL } }, /*GREEK CAPITAL LETTERALPHA*/- { 914, LATEX_MATH, "Beta", { "$\\Beta$", "\\Beta", NULL } }, /*GREEK CAPITAL LETTERBETA*/- { 915, LATEX_MATH, "Gamma", { "$\\Gamma$", "\\Gamma", NULL } }, /*GREEK CAPITAL LETTERGAMMA*/- { 916, LATEX_MATH, "Delta", { "$\\Delta$", "\\Delta", NULL } }, /*GREEK CAPITAL LETTERDELTA*/- { 917, LATEX_MATH, "Epsilon", { "$\\Epsilon$", "\\Epsilon", NULL } }, /*GREEK CAPITAL LETTEREPSILON*/- { 918, LATEX_MATH, "Zeta", { "$\\Zeta$", "\\Zeta", NULL } }, /*GREEK CAPITAL LETTERZETA*/- { 919, LATEX_MATH, "Eta", { "$\\Eta$", "\\Eta", NULL } }, /*GREEK CAPITAL LETTERETA*/- { 920, LATEX_MATH, "Theta", { "$\\Theta$", "\\Theta", NULL } }, /*GREEK CAPITAL LETTERTHETA*/- { 921, LATEX_MATH, "Iota", { "$\\Iota$", "\\Iota", NULL } }, /*GREEK CAPITAL LETTERIOTA*/- { 922, LATEX_MATH, "Kappa", { "$\\Kappa$", "\\Kappa", NULL } }, /*GREEK CAPITAL LETTERKAPPA*/- { 923, LATEX_MATH, "Lambda", { "$\\Lambda$", "\\Lambda", NULL } }, /*GREEK CAPITAL LETTERLAMDA*/- { 924, LATEX_MATH, "Mu", { "$\\Mu$", "\\Mu", NULL } }, /*GREEK CAPITAL LETTERMU*/- { 925, LATEX_MATH, "Nu", { "$\\Nu$", "\\Nu", NULL } }, /*GREEK CAPITAL LETTERNU*/- { 926, LATEX_MATH, "Xi", { "$\\Xi$", "\\Xi", NULL } }, /*GREEK CAPITAL LETTERXI*/- { 927, LATEX_MATH, "Omicron", { "$\\Omicron$", "\\Omicron", NULL } }, /*GREEK CAPITAL LETTEROMICRON*/- { 928, LATEX_MATH, "Pi", { "$\\Pi$", "\\Pi", NULL } }, /*GREEK CAPITAL LETTERPI*/- { 929, LATEX_MATH, "Rho", { "$\\Rho$", "\\Rho", NULL } }, /*GREEK CAPITAL LETTERRHO*/- { 931, LATEX_MATH, "Sigma", { "$\\Sigma$", "\\Sigma", NULL } }, /*GREEK CAPITAL LETTERSIGMA*/- { 932, LATEX_MATH, "Tau", { "$\\Tau$", "\\Tau", NULL } }, /*GREEK CAPITAL LETTERTAU*/- { 933, LATEX_MATH, "Upsilon", { "$\\Upsilon$", "\\Upsilon", NULL } }, /*GREEK CAPITAL LETTERUPSILON*/- { 934, LATEX_MATH, "Phi", { "$\\Phi$", "\\Phi", NULL } }, /*GREEK CAPITAL LETTERPHI*/- { 935, LATEX_MATH, "Chi", { "$\\Chi$", "\\Chi", NULL } }, /*GREEK CAPITAL LETTERCHI*/- { 936, LATEX_MATH, "Psi", { "$\\Psi$", "\\Psi", NULL } }, /*GREEK CAPITAL LETTERPSI*/- { 937, LATEX_MATH, "Omega", { "$\\Omega$", "\\Omega", NULL } }, /*GREEK CAPITAL LETTEROMEGA*/- /* 902 = GREEK CAPITAL LETTER ALPHAWITHTONOS*/- /* 904 = GREEK CAPITAL LETTER EPSILONWITHTONOS*/- /* 905 = GREEK CAPITAL LETTER ETAWITHTONOS*/- /* 938 = GREEK CAPITAL LETTER IOTAWITHDIALYTIKA*/- /* 906 = GREEK CAPITAL LETTER IOTAWITHTONOS*/- /* 908 = GREEK CAPITAL LETTER OMICRONWITHTONOS*/- /* 939 = GREEK CAPITAL LETTER UPSILONWITHDIALYTIKA*/- /* 910 = GREEK CAPITAL LETTER UPSILONWITHTONOS*/- /* 911, = GREEK CAPITAL LETTER OMEGAWITHTONOS*/+ MACRO1( 161, "textexclamdown", "\\textexclamdown" ), /* Inverted exclamation mark ¡*/+ MACRO1( 191, "textquestiondown", "\\textquestiondown" ), /* Inverted question mark ¿ */ - { 945, LATEX_MATH, "alpha", { "$\\alpha$", "\\alpha", NULL } }, /*GREEK SMALL LETTER ALPHA*/- { 946, LATEX_MATH, "beta", { "$\\beta$", "\\beta", NULL } }, /*GREEK SMALL LETTER BETA*/- { 968, LATEX_MATH, "psi", { "$\\psi$", "\\psi", NULL } }, /*GREEK SMALL LETTER PSI*/- { 948, LATEX_MATH, "delta", { "$\\delta$", "\\delta", NULL } }, /*GREEK SMALL LETTER DELTA*/- { 949, LATEX_MATH, "epsilon", { "$\\epsilon$", "\\epsilon", NULL } }, /*GREEK SMALL LETTER EPSILON*/- { 966, LATEX_MATH, "phi", { "$\\phi$", "\\phi", NULL } }, /*GREEK SMALL LETTER PHI*/- { 947, LATEX_MATH, "gamma", { "$\\gamma$", "\\gamma", NULL } }, /*GREEK SMALL LETTER GAMMA*/- { 951, LATEX_MATH, "eta", { "$\\eta$", "\\eta", NULL } }, /*GREEK SMALL LETTER ETA*/- { 953, LATEX_MATH, "iota", { "$\\iota$", "\\iota", NULL } }, /*GREEK SMALL LETTER IOTA*/- { 958, LATEX_MATH, "xi", { "$\\xi$", "\\xi", NULL } }, /*GREEK SMALL LETTER XI*/- { 954, LATEX_MATH, "kappa", { "$\\kappa$", "\\kappa" , NULL } }, /*GREEK SMALL LETTER KAPPA*/- { 955, LATEX_MATH, "lambda", { "$\\lambda$", "\\lambda", NULL } }, /*GREEK SMALL LETTER LAMDA*/- { 956, LATEX_MATH, "mu", { "$\\mu$", "\\mu", NULL } }, /*GREEK SMALL LETTER MU*/- { 957, LATEX_MATH, "nu", { "$\\nu$", "\\nu", NULL } }, /*GREEK SMALL LETTER NU*/- { 959, LATEX_MATH, "omicron", { "$\\omicron$", "\\omicron", NULL } }, /*GREEK SMALL LETTER OMICRON*/- { 960, LATEX_MATH, "pi", { "$\\pi$", "\\pi", NULL } }, /*GREEK SMALL LETTER PI*/- { 961, LATEX_MATH, "rho", { "$\\rho$", "\\rho", NULL } }, /*GREEK SMALL LETTER RHO*/- { 963, LATEX_MATH, "sigma", { "$\\sigma$", "\\sigma", NULL } }, /*GREEK SMALL LETTER SIGMA*/- { 964, LATEX_MATH, "tau", { "$\\tau$", "\\tau", NULL } }, /*GREEK SMALL LETTER TAU*/- { 952, LATEX_MATH, "theta", { "$\\theta$", "\\theta", NULL } }, /*GREEK SMALL LETTER THETA*/- { 969, LATEX_MATH, "omega", { "$\\omega$", "\\omega", NULL } }, /*GREEK SMALL LETTER OMEGA*/- { 967, LATEX_MATH, "chi", { "$\\chi$", "\\chi", NULL } }, /*GREEK SMALL LETTER CHI*/- { 965, LATEX_MATH, "upsilon", { "$\\upsilon$", "\\upsilon", NULL } }, /*GREEK SMALL LETTER UPSILON*/- { 950, LATEX_MATH, "zeta", { "$\\zeta$", "\\zeta", NULL } }, /*GREEK SMALL LETTER ZETA*/- /* 940 = GREEK SMALL LETTER ALPHAWITHTONOS*/- /* 941 = GREEK SMALL LETTER EPSILONWITHTONOS*/- /* 942 = GREEK SMALL LETTER ETAWITHTONOS */- /* 912 = GREEK SMALL LETTER IOTAWITHDIALYTIKAANDTONOS*/- /* 943 = GREEK SMALL LETTER IOTAWITHTONOS */- /* 970 = GREEK SMALL LETTER IOTAWITHDIALYTIKA */- /* 972 = GREEK SMALL LETTER OMICRONWITHTONOS*/- /* 974 = GREEK SMALL LETTER OMEGAWITHTONOS*/- /* 973 = GREEK SMALL LETTER UPSILONWITHTONOS*/- /* 971 = GREEK SMALL LETTER UPSILONWITHDIALYTIKA*/- /* 944 = GREEK SMALL LETTER UPSILONWITHDIALYTIKAANDTONOS*/+ MACRO1( 162, "textcent", "\\textcent" ), /* Cent sign ¢ */+ MACRO2( 163, "textsterling", "\\textsterling", "\\pounds" ), /* Pound sign £ */+ MACRO1( 165, "textyen", "\\textyen" ), /* Yen sign ¥ */+ MACRO1( 402, "textflorin", "\\textflorin" ), /* Florin sign ƒ */+ MACRO1( 3647, "textbaht", "\\textbaht" ), /* Thai currency ฿ */+ MACRO1( 8355, "textfrenchfranc", "\\textfrenchfranc" ), /* French franc ₣ */+ MACRO1( 8356, "textlira", "\\textlira" ), /* Lira ₤ */+ MACRO1( 8358, "textnaira", "\\textnaira" ), /* Naira ₦ */+ MACRO1( 8361, "textwon", "\\textwon" ), /* ₩ */+ MACRO1( 8363, "textdong", "\\textdong" ), /* Vietnamese currency ₫ */+ MACRO1( 8364, "texteuro", "\\texteuro" ), /* Euro sign */ - { 181, LATEX_MACRO, "textmu", { "{\\textmu}", "\\textmu", "$\\mu$" } }, /* 181=micro sign, techically µ */+ MACRO1( 169, "textcopyright", "\\textcopyright" ), /* Copyright (C) © */+ MACRO1( 175, "textregistered", "\\textregistered" ), /* Registered sign (R) ¯*/+ MACRO2( 8482, "texttrademark", "\\texttrademark", "^TM" ), /* Trademark (TM) ™ */+ MACRO2( 8480, "textservicemark", "\\textservicemark", "^SM" ), /* Servicemark (SM) ℠*/+ MACRO1( 8471, "textcircledP", "\\textcircledP" ), /* Circled P ࡅ */ -/* Make sure that these don't stomp on other latex things above */+ /* keep it after all other things like \~n */+ MACRO1( 35, "#", "\\#" ), /* Number/pound/hash sign */+ MACRO1( 36, "$", "\\$" ), /* Dollar Sign */+ MACRO2( 36, "$", "\\$", "\\textdollar" ),+ MACRO1( 37, "%", "\\%" ), /* Percent Sign */+ MACRO1( 37, "%", "\\%" ),+ MACRO1( 38, "&", "\\&" ), /* Ampersand */+ MACRO1( 95, "_", "\\_" ), /* Underscore alone indicates subscript */+ MACRO1( 95, "_", "\\textunderscore" ),+ MACRO2( 123, "{", "\\{", "\\textbraceleft" ), /* Left Curly Bracket */+ MACRO2( 125, "}", "\\}", "\\textbraceright" ), /* Right Curly Bracket */+ MACRO2( 126, "~", "\\~", "\\textasciitilde" ),+ MACRO1( 92, "backslash", "\\backslash" ), /* Backslash */+ MACRO2( 176, "textdegree", "\\textdegree", "^\\circ" ), /* Degree sign */ - { 8242, LATEX_MACRO, "textasciiacutex", { "{\\textasciiacutex}", "\\textasciiacutex", "$'$" } }, /* Prime symbol ′ */- { 180, LATEX_MACRO, "textasciiacute", { "{\\textasciiacute}", "\\textasciiacute", "\\'" } }, /* acute accent ´ */- { 8243, LATEX_MACRO, "textacutedbl", { "{\\textacutedbl}", "\\textacutedbl", "$''$" } }, /* Double prime ″ */- { 8245, LATEX_MACRO, "textasciigrave", { "{\\textasciigrave}", "\\textasciigrave", "\\`" } }, /* Grave accent ‵ */-/* { 768, LATEX_MACRO, "`", { "\\`", NULL, NULL } },*//* Grave accent ̀--apply to next char */-/* { 769, LATEX_MACRO, "'", { "\\'", NULL, NULL } },*//* Acute accent ́--apply to next char */ - { 8963, LATEX_MACRO, "textasciicircum", { "{\\textasciicircum}", "\\textasciicircum", NULL } }, /* ⌃ */- { 184, LATEX_MACRO, "textasciicedilla", { "{\\textasciicedilla}", "\\textasciicedilla", NULL } }, /* cedilla ¸ */- { 168, LATEX_MACRO, "textasciidieresis", { "{\\textasciidieresis}", "\\textasciidieresis", NULL } }, /* dieresis ¨ */- { 175, LATEX_MACRO, "textasciimacron", { "{\\textasciimacron}", "\\textasciimacron", NULL } }, /* macron ¯ */ - { 8593, LATEX_MACRO, "textuparrow", { "{\\textuparrow}", "\\textuparrow", NULL } }, /* Up arrow ↑ */- { 8595, LATEX_MACRO, "textdownarrow", { "{\\textdownarrow}", "\\textdownarrow", NULL } }, /* Down arrow ↓ */- { 8594, LATEX_MACRO, "textrightarrow", { "{\\textrightarrow}", "\\textrightarrow", NULL } }, /* Right arrow → */- { 8592, LATEX_MACRO, "textleftarrow", { "{\\textleftarrow}", "\\textleftarrow", NULL } }, /* Left arrow ← */- { 12296,LATEX_MACRO, "textlangle", { "{\\textlangle}", "\\textlangle", NULL } }, /* L-angle 〈 */- { 12297,LATEX_MACRO, "textrangle", { "{\\textrangle}", "\\textrangle", NULL } }, /* L-angle 〉 */+}; - { 166, LATEX_MACRO, "textbrokenbar", { "{\\textbrokenbar}", "\\textbrokenbar", NULL } }, /* Broken vertical bar ¦ */- { 167, LATEX_MACRO, "textsection", { "{\\textsection}", "\\textsection", "\\S{}" } }, /* Section sign, § */- { 170, LATEX_MACRO, "textordfeminine", { "{\\textordfeminine}", "\\textordfeminine", "$^a$" } }, /* ª */- { 172, LATEX_MACRO, "textlnot", { "{\\textlnot}", "\\textlnot", NULL } }, /* Lnot ¬ */- { 182, LATEX_MACRO, "textparagraph", { "{\\textparagraph}", "\\textparagraph", NULL } }, /* Paragraph sign ¶ */- { 183, LATEX_MACRO, "textperiodcentered",{ "{\\textperiodcentered}","\\textperiodcentered", NULL } }, /* Period-centered · */- { 186, LATEX_MACRO, "textordmasculine", { "{\\textordmasculine}", "\\textordmasculine", NULL } }, /* º */- { 8214, LATEX_MACRO, "textbardbl", { "{\\textbardbl}", "\\textbardbl", NULL } }, /* Double vertical bar ‖ */- { 8224, LATEX_MACRO, "textdagger", { "{\\textdagger}", "\\textdagger", NULL } }, /* Dagger † */- { 8225, LATEX_MACRO, "textdaggerdbl", { "{\\textdaggerdbl}", "\\textdaggerdbl", NULL } }, /* Double dagger &x2021; */- { 8226, LATEX_MACRO, "textbullet", { "{\\textbullet}", "\\textbullet", NULL } }, /* Bullet • */- { 8494, LATEX_MACRO, "textestimated", { "{\\textestimated}", "\\textestimated", NULL } }, /* Estimated ℮ */- { 9526, LATEX_MACRO, "textopenbullet", { "{\\textopenbullet}", "\\textopenbullet", NULL } }, /* ┶ */+static int nlatex_chars = sizeof(latex_chars)/sizeof(latex_chars[0]); - { 8220, LATEX_COMBO, "``", { "``", "{\\textquotedblleft}", "\\textquotedblleft" } }, /* Opening double quote “ */- { 8221, LATEX_COMBO, "''", { "''", "{\\textquotedblright}", "\\textquotedblright" } }, /* Closing double quote ” */- { 8216, LATEX_COMBO, "`", { "`", "{\\textquoteleft}", "\\textquoteleft" } }, /* Opening single quote ‘ */- { 8217, LATEX_COMBO, "'", { "'", "{\\textquoteright}", "\\textquoteright" } }, /* Closing single quote ’ */- { 8261, LATEX_MACRO, "textlquill", { "{\\textlquill}", "\\textlquill", NULL } }, /* Left quill ⁅ */- { 8262, LATEX_MACRO, "textrquill", { "{\\textrquill}", "\\textrquill", NULL } }, /* Right quill ⁆ */ - { 8212, LATEX_COMBO, "---", { "---", "{\\textemdash}", "\\textemdash" } }, /* Em-dash — */- { 8211, LATEX_COMBO, "--", { "--", "{\\textendash}", "\\textendash" } }, /* En-dash – */- { 8230, LATEX_MACRO, "ldots", { "{\\ldots}", "{\\textellipsis}", "\\textellipsis" } }, /* Ellipsis … */-- { 8194, LATEX_MACRO, "enspace", { "{\\enspace}", "\\hspace{.5em}", NULL } }, /* En-space   */- { 8195, LATEX_MACRO, "emspace", { "{\\emspace}", "\\hspace{1em}", NULL } }, /* Em-space   */- { 8201, LATEX_MACRO, "thinspace", { "{\\thinspace}", NULL, NULL } }, /* Thin space   */- { 8203, LATEX_MACRO, "textnospace", { "{\\textnospace}", "\\textnospace", NULL } }, /* No space ​ */- { 9251, LATEX_MACRO, "textvisiblespace", { "{\\textvisiblespace}", "\\textvisiblespace", NULL } }, /* Visible space ␣ */-- { 215, LATEX_MACRO, "texttimes", { "{\\texttimes}", "\\texttimes", NULL } }, /* Multiplication symbol × */- { 247, LATEX_MACRO, "textdiv", { "{\\textdiv}", "\\textdiv", NULL } }, /* Division symbol ÷ */- { 177, LATEX_MACRO, "textpm", { "{\\textpm}", "\\textpm", NULL } }, /* Plus-minus character &#B1; */- { 189, LATEX_MACRO, "textonehalf", { "{\\textonehalf}", "\\textonehalf", NULL } }, /* Vulgar fraction one half ½ */- { 188, LATEX_MACRO, "textonequarter", { "{\\textonequarter}", "\\textonequarter", NULL } }, /* Vulgar fraction one quarter ½ */- { 190, LATEX_MACRO, "textthreequarters", { "{\\textthreequarters}", "\\textthreequarters", NULL } }, /* Vulgar fraction three quarters ¾ */- { 8240, LATEX_MACRO, "texttenthousand", { "{\\texttenthousand}", "\\texttenthousand", NULL } }, /* Per thousand sign ‰ */- { 8241, LATEX_MACRO, "textpertenthousand",{ "{\\textpertenthousand}","\\textpertenthousand", NULL } }, /* Per ten thousand sign ‱*/- { 8260, LATEX_MACRO, "textfractionssolidus",{"{\\textfractionsolidus}", "\\textfractionsolidus", NULL } }, /* &x8260; */- { 8451, LATEX_MACRO, "textcelcius", { "{\\textcelcius}", "\\textcelcius", NULL } }, /* Celcicus ℃ */- { 8470, LATEX_MACRO, "textnumero", { "{\\textnumero}", "\\textnumero", NULL } }, /* Numero symbol № */- { 8486, LATEX_MACRO, "textohm", { "{\\textohm}", "\\textohm", NULL } }, /* Ohm symbol Ω */- { 8487, LATEX_MACRO, "textmho", { "{\\textmho}", "\\textmho", NULL } }, /* Mho symbol ℧ */- { 8730, LATEX_MACRO, "textsurd", { "{\\textsurd}", "\\textsurd", NULL } }, /* √ */-- { 185, LATEX_MACRO, "textonesuperior", { "{\\textonesuperior}", "\\textonesuperior", "$^1$" } }, /*Superscript 1 ¹ */- { 178, LATEX_MACRO, "texttwosuperior", { "{\\texttwosuperior}", "\\texttwosuperior", "$^2$" } }, /*Superscript 2 ² */- { 179, LATEX_MACRO, "textthreesuperior", { "{\\textthreesuperior}", "\\textthreesuperior", "$^3$" } }, /*Superscript 3 ³ */-- { 161, LATEX_MACRO, "textexclamdown", { "{\\textexclamdown}", "\\textexclamdown", NULL } }, /* Inverted exclamation mark ¡*/- { 191, LATEX_MACRO, "textquestiondown", { "{\\textquestiondown}", "\\textquestiondown", NULL } }, /* Inverted question mark ¿ */-- { 162, LATEX_MACRO, "textcent", { "{\\textcent}", "\\textcent", NULL } }, /* Cent sign ¢ */- { 163, LATEX_MACRO, "textsterling", { "{\\textsterling}", "\\textsterling", "\\pounds" } }, /* Pound sign £ */- { 165, LATEX_MACRO, "textyen", { "{\\textyen}", "\\textyen", NULL } }, /* Yen sign ¥ */- { 402, LATEX_MACRO, "textflorin", { "{\\textflorin}", "\\textflorin", NULL } }, /* Florin sign ƒ */- { 3647, LATEX_MACRO, "textbaht", { "{\\textbaht}", "\\textbaht", NULL } }, /* Thai currency ฿ */- { 8355, LATEX_MACRO, "textfrenchfranc", { "{\\textfrenchfranc}", "\\textfrenchfranc", NULL } }, /* French franc ₣ */- { 8356, LATEX_MACRO, "textlira", { "{\\textlira}", "\\textlira", NULL } }, /* Lira ₤ */- { 8358, LATEX_MACRO, "textnaira", { "{\\textnaira}", "\\textnaria", NULL } }, /* Naira ₦ */- { 8361, LATEX_MACRO, "textwon", { "{\\textwon}", "\\textwon", NULL } }, /* ₩ */- { 8363, LATEX_MACRO, "textdong", { "{\\textdong}", "\\textdong", NULL } }, /* Vietnamese currency ₫ */- { 8364, LATEX_MACRO, "texteuro", { "{\\texteuro}", "\\texteuro", NULL } }, /* Euro sign */-- { 169, LATEX_MACRO, "textcopyright", { "{\\textcopyright}", "\\textcopyright", NULL } }, /* Copyright (C) © */- { 175, LATEX_MACRO, "textregistered", { "{\\textregistered}", "\\textregistered", NULL } }, /* Registered sign (R) ¯*/- { 8482, LATEX_MACRO, "texttrademark", { "{\\texttrademark}", "\\texttrademark", "$^{TM}$" } }, /* Trademark (TM) ™ */- { 8480, LATEX_MACRO, "textservicemark", { "{\\textservicemark}", "\\textservicemark", "$^{SM}$" } }, /* Servicemark (SM) ℠*/- { 8471, LATEX_MACRO, "textcircledP", { "{\\textcircledP}", "\\textcircledP", NULL } }, /* Circled P ࡅ */-+static struct latex_chars only_from_latex[] = {+ COMBO1( 32, " ", "~" ),+ MACRO1( 32, " ", "\\ " ), /* escaping the space is used to avoid extra space after periods */ }; -static int nlatex_chars = sizeof(latex_chars)/sizeof(struct latex_chars);+static int num_only_from_latex = sizeof( only_from_latex ) / sizeof( only_from_latex[0] ); + /* latex2char() * * Use the latex_chars[] lookup table to determine if any character@@ -505,40 +475,46 @@ * (which could be Unicode, but is not necessarily Unicode). * */+static unsigned int+lookup_latex( struct latex_chars *lc, int n, char *p, unsigned int *pos, int *unicode )+{+ struct latex_entry *variant;+ int i, j;++ for ( i=0; i<n; ++i ) {+ for ( j=0; j<NUM_VARIANTS; ++j ) {+ variant = &(lc[i].variant[j] );+ if ( variant->entry == NULL ) break;+ if ( !strncmp( p, variant->entry, variant->length ) ) {+ *pos = *pos + variant->length;+ *unicode = 1;+ return lc[i].unicode;+ }+ }+ }++ return 0;+}+ unsigned int latex2char( char *s, unsigned int *pos, int *unicode ) {- unsigned int value;-// char *p, *q[3];- int i, j, len;+ unsigned int value, result; char *p; p = &( s[*pos] ); value = (unsigned char) *p;- if ( value=='{' || value=='\\' || value=='~' || - value=='$' || value=='\'' || value=='`' || - value=='-' || value=='^' ) {-// if ( *p=='\\' && ( *p=='{' || *p=='}' ) ) {-// } else {- for ( i=0; i<nlatex_chars; ++i ) {-// q[0] = latex_chars[i].bib1;-// l[0] = strlen( q[0] );-// q[1] = latex_chars[i].bib2;-// l[1] = strlen( q[1] );-// q[2] = latex_chars[i].bib3;-// l[2] = strlen( q[2] );- for ( j=0; j<3; ++j ) {- if ( latex_chars[i].variant[j] == NULL ) continue;- len = strlen( latex_chars[i].variant[j] );- if ( !strncmp( p, latex_chars[i].variant[j], len ) ) {- *pos = *pos + len;- *unicode = 1;- return latex_chars[i].unicode;- }- }- }-// }++ if ( strchr( "\\\'\"`-^_lL", value ) ) {+ result = lookup_latex( latex_chars, nlatex_chars, p, pos, unicode );+ if ( result!=0 ) return result; }++ if ( value=='~' || value=='\\' ) {+ result = lookup_latex( only_from_latex, num_only_from_latex, p, pos, unicode );+ if ( result!=0 ) return result;+ }+ *unicode = 0; *pos = *pos + 1; return value;@@ -569,7 +545,6 @@ } else if ( latex_chars[i].type == LATEX_MATH ) { if ( n < buf_size ) buf[n++] = '$';- if ( n < buf_size ) buf[n++] = '\\'; } j = 0;@@ -594,4 +569,3 @@ if ( ch < 128 ) buf[0] = (char)ch; }-
+ bibutils/latex_parse.c view
@@ -0,0 +1,374 @@+/*+ * latex_parse.c+ *+ * Parse LaTeX code.+ *+ * Copyright (c) Chris Putnam 2020+ *+ * Source code released under the GPL version 2+ *+ */+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include "bibdefs.h"+#include "is_ws.h"+#include "latex_parse.h"++typedef struct latex_node {+ struct latex_edge *next_edge;+ struct latex_node *down_node;+} latex_node;++typedef struct latex_edge {+ struct latex_node *next_node;+ str text;+} latex_edge;++static latex_node *+latex_node_new( void )+{+ return ( latex_node * ) calloc( 1, sizeof( latex_node ) );+}++static void+latex_node_delete( latex_node *n )+{+ free( n );+}++static latex_edge *+latex_edge_new( void )+{+ latex_edge *e;+ e = ( latex_edge * ) calloc( 1, sizeof( latex_edge ) );+ if ( e ) str_init( &(e->text) );+ return e;+}++static void+latex_edge_delete( latex_edge *e )+{+ str_free( &(e->text) );+ free( e );+}++static int+is_unescaped( char *p, unsigned long *offset, char c )+{+ if ( *p!=c ) return 0;+ if ( *offset > 0 && *(p-1)=='\\' ) return 0;+ return 1;+}++static int+build_latex_graph_r( str *in, unsigned long *offset, int *mathmode, int depth, latex_node **node )+{+ latex_node *newnode, *downnode;+ int status = BIBL_OK;+ latex_edge *newedge;+ char *p;++ newnode = latex_node_new();+ if ( !newnode ) return BIBL_ERR_MEMERR;++ newedge = latex_edge_new();+ if ( !newedge ) {+ latex_node_delete( newnode );+ return BIBL_ERR_MEMERR;+ }++ *node = newnode;++ newnode->next_edge = newedge;++ p = str_cstr( in ) + *offset;++ while ( *p ) {+ if ( is_unescaped( p, offset, '{' ) ) {+ *offset += 1;+ newnode = latex_node_new();+ if ( !newnode ) { status = BIBL_ERR_MEMERR; goto out; }+ newedge->next_node = newnode;+ newedge = latex_edge_new();+ if ( !newedge ) { status = BIBL_ERR_MEMERR; goto out; }+ newnode->next_edge = newedge;+ status = build_latex_graph_r( in, offset, mathmode, depth+1, &downnode );+ if ( status!=BIBL_OK ) goto out;+ newnode->down_node = downnode;+ p = str_cstr( in ) + *offset;+ }+ else if ( is_unescaped( p, offset, '}' ) ) {+ *offset += 1;+ if ( depth==0 ) {+ fprintf( stderr, "Unmatched '}' character in LaTeX encoding '%s'.\n", str_cstr( in ) );+ p++;+ continue;+ }+ goto out;+ }+ else if ( is_unescaped( p, offset, '$' ) ) {+ *mathmode = !(*mathmode);+ *offset += 1;+ if ( *mathmode ) {+ newnode = latex_node_new();+ if ( !newnode ) { status = BIBL_ERR_MEMERR; goto out; }+ newedge->next_node = newnode;+ newedge = latex_edge_new();+ if ( !newedge ) { status = BIBL_ERR_MEMERR; goto out; }+ newnode->next_edge = newedge;+ status = build_latex_graph_r( in, offset, mathmode, depth+1, &downnode );+ if ( status!=BIBL_OK ) goto out;+ newnode->down_node = downnode;+ p = str_cstr( in ) + *offset;+ }+ else {+ if ( depth==0 ) {+ fprintf( stderr, "Unmatched '$' character in LaTeX encoding '%s'.\n", str_cstr( in ) );+ p++;+ continue;+ }+ goto out;+ }+ }+ else {+ str_addchar( &(newedge->text), *p );+ p++;+ *offset += 1;+ }+ }++ if ( depth!=0 ) {+ fprintf( stderr, "Unmatched '{' character in LaTeX encoding '%s'.\n", str_cstr( in ) );+ }++out:+ if ( status!=BIBL_OK || str_memerr( &(newedge->text) ) ) {+ latex_node_delete( newnode );+ latex_edge_delete( newedge );+ *node = NULL;+ return BIBL_ERR_MEMERR;+ }++ return BIBL_OK;+}++int+build_latex_graph( str *in, latex_node **start )+{+ unsigned long offset = 0;+ int mathmode = 0;+ latex_node *n;++ n = latex_node_new();+ if ( !n ) return BIBL_ERR_MEMERR;+ + return build_latex_graph_r( in, &offset, &mathmode, 0, start );+}++typedef struct {+ const char *wbracket;+ int wbracketsize;+ const char *wobracket;+ const char *toreplace;+} latex_cmds_t;++static const latex_cmds_t latex_cmds[] = {+ { "\\it", 3, "\\it ", NULL },+ { "\\em", 3, "\\em ", NULL },+ { "\\bf", 3, "\\bf ", NULL },+ { "\\small", 6, "\\small ", NULL },+ /* 'textcomp' annotations */+ { "\\textit", 7, "\\textit ", NULL },+ { "\\textbf", 7, "\\textbf ", NULL },+ { "\\textrm", 7, "\\textrm ", NULL },+ { "\\textsl", 7, "\\textsl ", NULL },+ { "\\textsc", 7, "\\textsc ", NULL },+ { "\\textsf", 7, "\\textsf ", NULL },+ { "\\texttt", 7, "\\texttt ", NULL },+ { "\\emph", 5, "\\emph ", NULL },+ { "\\url", 4, "\\url ", NULL },+ { "\\mbox", 5, "\\mbox ", NULL },+ { "\\mkbibquote", 11, "\\mkbibquote ", NULL },+ /* math functions */+ { "\\ln", 3, "\\ln ", "ln" },+ { "\\sin", 4, "\\sin ", "sin" },+ { "\\cos", 4, "\\cos ", "cos" },+ { "\\tan", 4, "\\tan ", "tan" },+};+static const int nlatex_cmds = sizeof( latex_cmds ) / sizeof( latex_cmds[0] );++static const latex_cmds_t math_cmds[] = {+ { "\\ln", 3, "\\ln ", "ln" },+ { "\\sin", 4, "\\sin ", "sin" },+ { "\\cos", 4, "\\cos ", "cos" },+ { "\\tan", 4, "\\tan ", "tan" },+ { "\\mathrm", 7, "\\mathrm ", "" },+ { "\\rm", 3, "\\rm ", "" },+ { "\\LaTeX", 6, "\\LaTeX ", "LaTeX" },+};+static const int nmath_cmds = sizeof( math_cmds ) / sizeof( math_cmds[0] );++/* remove from "ABC \it{DEF}" --> parses to "ABC \it" */+static int+remove_latex_cmds_with_brackets( str *s )+{+ unsigned long offset;+ int i;+ for ( i=0; i<nlatex_cmds; ++i ) {+ if ( s->len < latex_cmds[i].wbracketsize ) continue;+ offset = s->len - latex_cmds[i].wbracketsize;+ if ( !strcmp( str_cstr( s ) + offset, latex_cmds[i].wbracket ) ) {+ str_trimend( s, latex_cmds[i].wbracketsize );+ return 1;+ }+ }+ return 0;+}++/* remove from "{\it ABC}" */+static void+remove_latex_cmds_without_brackets( str *s )+{+ int i;+ for ( i=0; i<nlatex_cmds; ++i ) {+ str_findreplace( s, latex_cmds[i].wobracket, "" );+ }+}++static void+remove_math_cmds( str *s )+{+ int i;+ for ( i=0; i<nmath_cmds; ++i ) {+ str_findreplace( s, math_cmds[i].wbracket, math_cmds[i].toreplace );+ }+}++static int+collapse_latex_graph( latex_node *n, str *out )+{+ latex_edge *e;+ int status;++ if ( n->down_node ) {+ status = collapse_latex_graph( n->down_node, out );+ if ( status!=BIBL_OK ) return status;+ }++ e = n->next_edge;+ if ( e ) {+ if ( !remove_latex_cmds_with_brackets( &(e->text) ) )+ remove_latex_cmds_without_brackets( &(e->text) );+ remove_math_cmds( &(e->text) );+ str_strcat( out, &(e->text) );+ if ( str_memerr( &(e->text) ) ) return BIBL_ERR_MEMERR;+ if ( e->next_node ) {+ status = collapse_latex_graph( e->next_node, out );+ if ( status!=BIBL_OK ) return status;+ }+ }++ return BIBL_OK;+}++static int+string_from_latex_graph( latex_node *n, str *out )+{+ int status;++ status = collapse_latex_graph( n, out );+ if ( status!=BIBL_OK ) return status;++ while( str_findreplace( out, " ", " " ) ) {}++ if ( str_memerr( out ) ) return BIBL_ERR_MEMERR;+ else return BIBL_OK;+}++#if 0+static void+write_latex_graph( latex_node *n )+{+ latex_edge *e;++ while ( n ) {++ if ( n->down_node ) {+ printf( "+{" );+ write_latex_graph( n->down_node );+ printf( "}" );+ }+ else printf( "." );++ e = n->next_edge;+ if ( e ) {+ if ( str_has_value( &(e->text) ) ) printf( "%s", str_cstr( &(e->text) ) );+ n = e->next_node;+ }+ else n = NULL;+ }+}+#endif++int+latex_parse( str *in, str *out )+{+ latex_node *n;+ int status;++ str_empty( out );+ if ( str_is_empty( in ) ) return BIBL_OK;++ status = build_latex_graph( in, &n );+ if ( status!=BIBL_OK ) return status;++ status = string_from_latex_graph( n, out );+ if ( status!=BIBL_OK ) return status;++ str_trimendingws( out );++ return BIBL_OK;+}++int+latex_tokenize( slist *tokens, str *s )+{+ int i, n = s->len, nbrackets = 0, status = BIBL_OK;+ str tok, *t;++ str_init( &tok );++ for ( i=0; i<n; ++i ) {+ if ( s->data[i]=='{' && ( i==0 || s->data[i-1]!='\\' ) ) {+ nbrackets++;+ str_addchar( &tok, '{' );+ } else if ( s->data[i]=='}' && ( i==0 || s->data[i-1]!='\\' ) ) {+ nbrackets--;+ str_addchar( &tok, '}' );+ } else if ( !is_ws( s->data[i] ) || nbrackets ) {+ str_addchar( &tok, s->data[i] );+ } else if ( is_ws( s->data[i] ) ) {+ if ( str_has_value( &tok ) ) {+ status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );+ if ( status!=BIBL_OK ) goto out;+ }+ str_empty( &tok );+ }+ }+ if ( str_has_value( &tok ) ) {+ if ( str_memerr( &tok ) ) { status = BIBL_ERR_MEMERR; goto out; }+ status = slist_add_ret( tokens, &tok, BIBL_OK, BIBL_ERR_MEMERR );+ if ( status!=BIBL_OK ) goto out;+ }++ for ( i=0; i<tokens->n; ++i ) {+ t = slist_str( tokens, i );+ str_trimstartingws( t );+ str_trimendingws( t );+ if ( str_memerr( t ) ) { status = BIBL_ERR_MEMERR; goto out; }+ }+out:+ str_free( &tok );+ return status;+}
+ bibutils/latex_parse.h view
@@ -0,0 +1,13 @@+/*+ * latex_parse.h+ */+#ifndef LATEX_PARSE_H+#define LATEX_PARSE_H++#include "slist.h"++int latex_parse( str *in, str *out );+int latex_tokenize( slist *tokens, str *s );+++#endif
bibutils/marc_auth.c view
@@ -1,8 +1,10 @@ /* * marc_auth.c *- * Copyright (c) Chris Putnam 2004-2019+ * MARC (MAchine-Readable Cataloging) 21 authority codes/values from the Library of Congress initiative *+ * Copyright (c) Chris Putnam 2004-2020+ * * Source code released under the GPL version 2 * */@@ -123,293 +125,296 @@ /* www.loc.gov/marc/relators/relacode.html */ typedef struct marc_trans {- char *abbreviation; char *internal_name;+ char *abbreviation; } marc_trans; static const marc_trans relators[] = {- { "abr", "ABRIDGER" }, /* Abridger */- { "acp", "ART_COPYIST" }, /* Art copyist */- { "act", "ACTOR" }, /* Actor */- { "adi", "ART_DIRECTOR" }, /* Art director */- { "adp", "ADAPTER" }, /* Adapter */- { "aft", "AUTHOR" }, /* Author of afterword, colophon, etc. */- { "anl", "ANALYST" }, /* Analyst */- { "anm", "ANIMATOR" }, /* Animator */- { "ann", "ANNOTATOR" }, /* Annotator */- { "ant", "BIBLIOGRAPHIC_ANTECENDENT" }, /* Bibliographic antecedent */- { "ape", "APPELLEE" }, /* Appellee */- { "apl", "APPELLANT" }, /* Appellant */- { "app", "APPLICANT" }, /* Applicant */- { "aqt", "AUTHOR" }, /* Author in quotations or text abstracts */- { "arc", "ARCHITECT" }, /* Architect */- { "ard", "ARTISTIC_DIRECTOR" }, /* Artistic director */- { "arr", "ARRANGER" }, /* Arranger */- { "art", "ARTIST" }, /* Artist */- { "asg", "ASSIGNEE" }, /* Assignee */- { "asn", "ASSOCIATED_NAME" }, /* Associated name */- { "ato", "AUTOGRAPHER" }, /* Autographer */- { "att", "ATTRIBUTED_NAME" }, /* Attributed name */- { "auc", "AUCTIONEER" }, /* Auctioneer */- { "aud", "AUTHOR" }, /* Author of dialog */- { "aui", "AUTHOR" }, /* Author of introduction, etc. */- { "aus", "AUTHOR" }, /* Screenwriter */- { "aut", "AUTHOR" }, /* Author */- { "author", "AUTHOR" },- { "bdd", "BINDING_DESIGNER" }, /* Binding designer */- { "bjd", "BOOKJACKET_DESIGNER" }, /* Bookjacket designer */- { "bkd", "BOOK_DESIGNER" }, /* Book designer */- { "bkp", "BOOK_PRODUCER" }, /* Book producer */- { "blw", "AUTHOR" }, /* Blurb writer */- { "bnd", "BINDER" }, /* Binder */- { "bpd", "BOOKPLATE_DESIGNER" }, /* Bookplate designer */- { "brd", "BROADCASTER" }, /* Broadcaster */- { "brl", "BRAILLE_EMBOSSER" }, /* Braille embosser */- { "bsl", "BOOKSELLER" }, /* Bookseller */- { "cas", "CASTER" }, /* Caster */- { "ccp", "CONCEPTOR" }, /* Conceptor */- { "chr", "CHOREOGRAPHER" }, /* Choreographer */- { "clb", "COLLABORATOR" }, /* Collaborator */- { "cli", "CLIENT" }, /* Client */- { "cll", "CALLIGRAPHER" }, /* Calligrapher */- { "clr", "COLORIST" }, /* Colorist */- { "clt", "COLLOTYPER" }, /* Collotyper */- { "cmm", "COMMENTATOR" }, /* Commentator */- { "cmp", "COMPOSER" }, /* Composer */- { "cmt", "COMPOSITOR" }, /* Compositor */- { "cnd", "CONDUCTOR" }, /* Conductor */- { "cng", "CINEMATOGRAPHER" }, /* Cinematographer */- { "cns", "CENSOR" }, /* Censor */- { "coe", "CONTESTANT-APPELLEE" }, /* Contestant-appellee */- { "col", "COLLECTOR" }, /* Collector */- { "com", "COMPILER" }, /* Compiler */- { "con", "CONSERVATOR" }, /* Conservator */- { "cor", "COLLECTION_REGISTRAR" }, /* Collection registrar */- { "cos", "CONTESTANT" }, /* Contestant */- { "cot", "CONTESTANT-APPELLANT" }, /* Contestant-appellant */- { "cou", "COURT_GOVERNED" }, /* Court governed */- { "cov", "COVER_DESIGNER" }, /* Cover designer */- { "cpc", "COPYRIGHT_CLAIMANT" }, /* Copyright claimant */- { "cpe", "COMPLAINANT-APPELLEE" }, /* Complainant-appellee */- { "cph", "COPYRIGHT_HOLDER" }, /* Copyright holder */- { "cpl", "COMPLAINANT" }, /* Complainant */- { "cpt", "COMPLAINANT-APPELLANT" }, /* Complainant-appellant */- { "cre", "AUTHOR" }, /* Creator */- { "creator", "AUTHOR" },- { "crp", "CORRESPONDENT" }, /* Correspondent */- { "crr", "CORRECTOR" }, /* Corrector */- { "crt", "COURT_REPORTER" }, /* Court reporter */- { "csl", "CONSULTANT" }, /* Consultant */- { "csp", "CONSULTANT_TO_A_PROJECT" }, /* Consultant to a project */- { "cst", "COSTUME_DESIGNER" }, /* Costume designer */- { "ctb", "CONTRIBUTOR" }, /* Contributor */- { "cte", "CONTESTEE-APPELLEE" }, /* Contestee-appellee */- { "ctg", "CARTOGRAPHER" }, /* Cartographer */- { "ctr", "CONTRACTOR" }, /* Contractor */- { "cts", "CONTESTEE" }, /* Contestee */- { "ctt", "CONTESTEE-APPELLANT" }, /* Contestee-appellant */- { "cur", "CURATOR" }, /* Curator */- { "cwt", "COMMENTATOR_FOR_WRITTEN_TEXT" }, /* Commentator for written text */- { "dbp", "DISTRIBUTION_PLACE" }, /* Distribution place */- { "degree grantor", "DEGREEGRANTOR" },- { "dfd", "DEFENDANT" }, /* Defendant */- { "dfe", "DEFENDANT-APPELLEE" }, /* Defendant-appellee */- { "dft", "DEFENDANT-APPELLANT" }, /* Defendant-appellant */- { "dgg", "DEGREEGRANTOR" }, /* Degree granting institution */- { "dgs", "DEGREE_SUPERVISOR" }, /* Degree supervisor */- { "dis", "DISSERTANT" }, /* Dissertant */- { "dln", "DELINEATOR" }, /* Delineator */- { "dnc", "DANCER" }, /* Dancer */- { "dnr", "DONOR" }, /* Donor */- { "dpc", "DEPICTED" }, /* Depicted */- { "dpt", "DEPOSITOR" }, /* Depositor */- { "drm", "DRAFTSMAN" }, /* Draftsman */- { "drt", "DIRECTOR" }, /* Director */- { "dsr", "DESIGNER" }, /* Designer */- { "dst", "DISTRIBUTOR" }, /* Distributor */- { "dtc", "DATA_CONTRIBUTOR" }, /* Data contributor */- { "dte", "DEDICATEE" }, /* Dedicatee */- { "dtm", "DATA_MANAGER" }, /* Data manager */- { "dto", "DEDICATOR" }, /* Dedicator */- { "dub", "AUTHOR" }, /* Dubious author */- { "edc", "EDITOR" }, /* Editor of compilation */- { "edm", "EDITOR" }, /* Editor of moving image work */- { "edt", "EDITOR" }, /* Editor */- { "egr", "ENGRAVER" }, /* Engraver */- { "elg", "ELECTRICIAN" }, /* Electrician */- { "elt", "ELECTROTYPER" }, /* Electrotyper */- { "eng", "ENGINEER" }, /* Engineer */- { "enj", "ENACTING_JURISICTION" }, /* Enacting jurisdiction */- { "etr", "ETCHER" }, /* Etcher */- { "evp", "EVENT_PLACE" }, /* Event place */- { "exp", "EXPERT" }, /* Expert */- { "fac", "FACSIMILIST" }, /* Facsimilist */- { "fds", "FILM_DISTRIBUTOR" }, /* Film distributor */- { "fld", "FIELD_DIRECTOR" }, /* Field director */- { "flm", "FILM_EDITOR" }, /* Film editor */- { "fmd", "FILM_DIRECTOR" }, /* Film director */- { "fmk", "FILMMAKER" }, /* Filmmaker */- { "fmo", "FORMER_OWNER" }, /* Former owner */- { "fmp", "FILM_PRODUCER" }, /* Film producer */- { "fnd", "FUNDER" }, /* Funder */- { "fpy", "FIRST_PARTY" }, /* First party */- { "frg", "FORGER" }, /* Forger */- { "gis", "GEOGRAPHIC_INFORMATON_SPECIALIST" }, /* Geographic information specialist */- { "grt", "GRAPHIC_TECHNICIAN" }, /* Graphic technician */- { "his", "HOST_INSTITUTION" }, /* Host institution */- { "hnr", "HONOREE" }, /* Honoree */- { "hst", "HOST" }, /* Host */- { "ill", "ILLUSTRATOR" }, /* Illustrator */- { "ilu", "ILLUMINATOR" }, /* Illuminator */- { "ins", "INSCRIBER" }, /* Inscriber */- { "inv", "INVENTOR" }, /* Inventor */- { "isb", "ISSUING_BODY" }, /* Issuing body */- { "itr", "INSTRUMENTALIST" }, /* Instrumentalist */- { "ive", "INTERVIEWEE" }, /* Interviewee */- { "ivr", "INTERVIEWER" }, /* Interviewer */- { "jud", "JUDGE" }, /* Judge */- { "jug", "JURISDICTION_GOVERNED" }, /* Jurisdiction governed */- { "lbr", "LABORATORY" }, /* Laboratory */- { "lbt", "LIBRETTIST" }, /* Librettist */- { "ldr", "LABORATORY_DIRECTORY" }, /* Laboratory director */- { "led", "LEAD" }, /* Lead */- { "lee", "LIBELEE-APPELLEE" }, /* Libelee-appellee */- { "lel", "LIBELEE" }, /* Libelee */- { "len", "LENDER" }, /* Lender */- { "let", "LIBELEE-APPELLANT" }, /* Libelee-appellant */- { "lgd", "LIGHTING_DESIGNER" }, /* Lighting designer */- { "lie", "LIBELANT-APPELLEE" }, /* Libelant-appellee */- { "lil", "LIBELANT" }, /* Libelant */- { "lit", "LIBELANT-APPELLANT" }, /* Libelant-appellant */- { "lsa", "LANDSCAPE_ARCHITECT" }, /* Landscape architect */- { "lse", "LICENSEE" }, /* Licensee */- { "lso", "LICENSOR" }, /* Licensor */- { "ltg", "LITHOGRAPHER" }, /* Lithographer */- { "lyr", "LYRICIST" }, /* Lyricist */- { "mcp", "MUSIC_COPYIST" }, /* Music copyist */- { "mdc", "METADATA_CONTACT" }, /* Metadata contact */- { "med", "MEDIUM" }, /* Medium */- { "mfp", "MANUFACTURE_PLACE" }, /* Manufacture place */- { "mfr", "MANUFACTURER" }, /* Manufacturer */- { "mod", "MODERATOR" }, /* Moderator */- { "mon", "THESIS_EXAMINER" }, /* Monitor */- { "mrb", "MARBLER" }, /* Marbler */- { "mrk", "EDITOR" }, /* Markup editor */- { "msd", "MUSICAL_DIRECTOR" }, /* Musical director */- { "mte", "METAL-ENGRAVER" }, /* Metal-engraver */- { "mtk", "MINUTE_TAKER" }, /* Minute taker */- { "mus", "MUSICIAN" }, /* Musician */- { "nrt", "NARRATOR" }, /* Narrator */- { "opn", "THESIS_OPPONENT" }, /* Opponent */- { "org", "ORIGINATOR" }, /* Originator */- { "organizer of meeting", "ORGANIZER" },- { "orm", "ORGANIZER" }, /* Organizer */- { "osp", "ONSCREEN_PRESENTER" }, /* Onscreen presenter */- { "oth", "THESIS_OTHER" }, /* Other */- { "own", "OWNER" }, /* Owner */- { "pan", "PANELIST" }, /* Panelist */- { "pat", "PATRON" }, /* Patron */- { "patent holder", "ASSIGNEE" },- { "pbd", "PUBLISHING_DIRECTOR" }, /* Publishing director */- { "pbl", "PUBLISHER" }, /* Publisher */- { "pdr", "PROJECT_DIRECTOR" }, /* Project director */- { "pfr", "PROOFREADER" }, /* Proofreader */- { "pht", "PHOTOGRAPHER" }, /* Photographer */- { "plt", "PLATEMAKER" }, /* Platemaker */- { "pma", "PERMITTING_AGENCY" }, /* Permitting agency */- { "pmn", "PRODUCTION_MANAGER" }, /* Production manager */- { "pop", "PRINTER_OF_PLATES" }, /* Printer of plates */- { "ppm", "PAPERMAKER" }, /* Papermaker */- { "ppt", "PUPPETEER" }, /* Puppeteer */- { "pra", "PRAESES" }, /* Praeses */- { "prc", "PROCESS_CONTRACT" }, /* Process contact */- { "prd", "PRODUCTION_PERSONNEL" }, /* Production personnel */- { "pre", "PRESENTER" }, /* Presenter */- { "prf", "PERFORMER" }, /* Performer */- { "prg", "AUTHOR" }, /* Programmer */- { "prm", "PRINTMAKER" }, /* Printmaker */- { "prn", "PRODUCTION_COMPANY" }, /* Production company */- { "pro", "PRODUCER" }, /* Producer */- { "prp", "PRODUCTION_PLACE" }, /* Production place */- { "prs", "PRODUCTION_DESIGNER" }, /* Production designer */- { "prt", "PRINTER" }, /* Printer */- { "prv", "PROVIDER" }, /* Provider */- { "pta", "PATENT_APPLICANT" }, /* Patent applicant */- { "pte", "PLAINTIFF-APPELLEE" }, /* Plaintiff-appellee */- { "ptf", "PLAINTIFF" }, /* Plaintiff */- { "pth", "ASSIGNEE" }, /* Patent holder */- { "ptt", "PLAINTIFF-APPELLANT" }, /* Plaintiff-appellant */- { "pup", "PUBLICATION_PLACE" }, /* Publication place */- { "rbr", "RUBRICATOR" }, /* Rubricator */- { "rcd", "RECORDIST" }, /* Recordist */- { "rce", "RECORDING_ENGINEER" }, /* Recording engineer */- { "rcp", "ADDRESSEE" }, /* Addressee */- { "rdd", "RADIO_DIRECTOR" }, /* Radio director */- { "red", "REDAKTOR" }, /* Redaktor */- { "ren", "RENDERER" }, /* Renderer */- { "res", "RESEARCHER" }, /* Researcher */- { "rev", "REVIEWER" }, /* Reviewer */- { "rpc", "RADIO_PRODUCER" }, /* Radio producer */- { "rps", "REPOSITORY" }, /* Repository */- { "rpt", "REPORTER" }, /* Reporter */- { "rpy", "RESPONSIBLE_PARTY" }, /* Responsible party */- { "rse", "RESPONDENT-APPELLEE" }, /* Respondent-appellee */- { "rsg", "RESTAGER" }, /* Restager */- { "rsp", "RESPONDENT" }, /* Respondent */- { "rsr", "RESTORATIONIST" }, /* Restorationist */- { "rst", "RESPONDENT-APPELLANT" }, /* Respondent-appellant */- { "rth", "RESEARCH_TEAM_HEAD" }, /* Research team head */- { "rtm", "RESEARCH_TEAM_MEMBER" }, /* Research team member */- { "sad", "SCIENTIFIC_ADVISOR" }, /* Scientific advisor */- { "sce", "SCENARIST" }, /* Scenarist */- { "scl", "SCULPTOR" }, /* Sculptor */- { "scr", "SCRIBE" }, /* Scribe */- { "sds", "SOUND_DESIGNER" }, /* Sound designer */- { "sec", "SECRETARY" }, /* Secretary */- { "sgd", "STAGE_DIRECTOR" }, /* Stage director */- { "sgn", "SIGNER" }, /* Signer */- { "sht", "SUPPORTING_HOST" }, /* Supporting host */- { "sll", "SELLER" }, /* Seller */- { "sng", "SINGER" }, /* Singer */- { "spk", "SPEAKER" }, /* Speaker */- { "spn", "SPONSOR" }, /* Sponsor */- { "spy", "SECOND_PARTY" }, /* Second party */- { "srv", "SURVEYOR" }, /* Surveyor */- { "std", "SET_DESIGNER" }, /* Set designer */- { "stg", "SETTING" }, /* Setting */- { "stl", "STORYTELLER" }, /* Storyteller */- { "stm", "STAGE_MANAGER" }, /* Stage manager */- { "stn", "STANDARDS_BODY" }, /* Standards body */- { "str", "STEREOTYPER" }, /* Stereotyper */- { "tcd", "TECHNICAL_DIRECTOR" }, /* Technical director */- { "tch", "TEACHER" }, /* Teacher */- { "ths", "THESIS_ADVISOR" }, /* Thesis advisor */- { "tld", "TELEVISION_DIRECTOR" }, /* Television director */- { "tlp", "TELEVISION_PRODUCER" }, /* Television producer */- { "trc", "TRANSCRIBER" }, /* Transcriber */- { "trl", "TRANSLATOR" }, /* Translator */- { "tyd", "TYPE_DIRECTOR" }, /* Type designer */- { "tyg", "TYPOGRAPHER" }, /* Typographer */- { "uvp", "UNIVERSITY_PLACE" }, /* University place */- { "vac", "VOICE_ACTOR" }, /* Voice actor */- { "vdg", "VIDEOGRAPHER" }, /* Videographer */- { "voc", "VOCALIST" }, /* Vocalist */- { "wac", "AUTHOR" }, /* Writer of added commentary */- { "wal", "AUTHOR" }, /* Writer of added lyrics */- { "wam", "AUTHOR" }, /* Writer of accompanying material */- { "wat", "AUTHOR" }, /* Writer of added text */- { "wdc", "WOODCUTTER" }, /* Woodcutter */- { "wde", "WOOD_ENGRAVER" }, /* Wood engraver */- { "win", "AUTHOR" }, /* Writer of introduction */- { "wit", "WITNESS" }, /* Witness */- { "wpr", "AUTHOR" }, /* Writer of preface */- { "wst", "AUTHOR" }, /* Writer of supplementary textual content */+ { "ABRIDGER", "abr" },+ { "ART_COPYIST", "acp" },+ { "ACTOR", "act" },+ { "ART_DIRECTOR", "adi" },+ { "ADAPTER", "adp" },+ { "AFTERAUTHOR", "aft" },+ { "ANALYST", "anl" },+ { "ANIMATOR", "anm" },+ { "ANNOTATOR", "ann" },+ { "BIBLIOGRAPHIC_ANTECEDENT", "ant" },+ { "APPELLEE", "ape" },+ { "APPELLANT", "apl" },+ { "APPLICANT", "app" },+ { "AUTHOR", "aqt" },/* Author in quotations or text abstracts */+ { "ARCHITECT", "arc" },+ { "ARTISTIC_DIRECTOR", "ard" },+ { "ARRANGER", "arr" },+ { "ARTIST", "art" },+ { "ASSIGNEE", "asg" },+ { "ASSOCIATED_NAME", "asn" },+ { "AUTOGRAPHER", "ato" },+ { "ATTRIBUTED_NAME", "att" },+ { "AUCTIONEER", "auc" },+ { "AUTHOR", "aud" },/* Author of dialog */+ { "INTROAUTHOR", "aui" },/* Author of introduction, etc. */+ { "AUTHOR", "aus" },/* Screenwriter */+ { "AUTHOR", "aut" },+ { "AUTHOR", "author" },+ { "AFTERAUTHOR", "author of afterword, colophon, etc." },+ { "INTROAUTHOR", "author of introduction, etc." },+ { "BINDING_DESIGNER", "bdd" },+ { "BOOKJACKET_DESIGNER", "bjd" },+ { "BOOK_DESIGNER", "bkd" },+ { "BOOK_PRODUCER", "bkp" },+ { "AUTHOR", "blw" },/* Blurb writer */+ { "BINDER", "bnd" },+ { "BOOKPLATE_DESIGNER", "bpd" },+ { "BROADCASTER", "brd" },+ { "BRAILLE_EMBOSSER", "brl" },+ { "BOOKSELLER", "bsl" },+ { "CASTER", "cas" },+ { "CONCEPTOR", "ccp" },+ { "CHOREOGRAPHER", "chr" },+ { "COLLABORATOR", "clb" },+ { "CLIENT", "cli" },+ { "CALLIGRAPHER", "cll" },+ { "COLORIST", "clr" },+ { "COLLOTYPER", "clt" },+ { "COMMENTATOR", "cmm" },+ { "COMPOSER", "cmp" },+ { "COMPOSITOR", "cmt" },+ { "CONDUCTOR", "cnd" },+ { "CINEMATOGRAPHER", "cng" },+ { "CENSOR", "cns" },+ { "CONTESTANT-APPELLEE", "coe" },+ { "COLLECTOR", "col" },+ { "COMPILER", "com" },+ { "CONSERVATOR", "con" },+ { "COLLECTION_REGISTRAR", "cor" },+ { "CONTESTANT", "cos" },+ { "CONTESTANT-APPELLANT", "cot" },+ { "COURT_GOVERNED", "cou" },+ { "COVER_DESIGNER", "cov" },+ { "COPYRIGHT_CLAIMANT", "cpc" },+ { "COMPLAINANT-APPELLEE", "cpe" },+ { "COPYRIGHT_HOLDER", "cph" },+ { "COMPLAINANT", "cpl" },+ { "COMPLAINANT-APPELLANT", "cpt" },+ { "AUTHOR", "cre" },/* Creator */+ { "AUTHOR", "creator" },/* Creator */+ { "CORRESPONDENT", "crp" },+ { "CORRECTOR", "crr" },+ { "COURT_REPORTER", "crt" },+ { "CONSULTANT", "csl" },+ { "CONSULTANT", "csp" },/* Consultant to a project */+ { "COSTUME_DESIGNER", "cst" },+ { "CONTRIBUTOR", "ctb" },+ { "CONTESTEE-APPELLEE", "cte" },+ { "CARTOGRAPHER", "ctg" },+ { "CONTRACTOR", "ctr" },+ { "CONTESTEE", "cts" },+ { "CONTESTEE-APPELLANT", "ctt" },+ { "CURATOR", "cur" },+ { "COMMENTATOR", "cwt" },/* Commentator for written text */+ { "DISTRIBUTION_PLACE", "dbp" },+ { "DEGREEGRANTOR", "degree grantor" },/* Degree granting institution */+ { "DEFENDANT", "dfd" },+ { "DEFENDANT-APPELLEE", "dfe" },+ { "DEFENDANT-APPELLANT", "dft" },+ { "DEGREEGRANTOR", "dgg" },/* Degree granting institution */+ { "DEGREE_SUPERVISOR", "dgs" },+ { "DISSERTANT", "dis" },+ { "DELINEATOR", "dln" },+ { "DANCER", "dnc" },+ { "DONOR", "dnr" },+ { "DEPICTED", "dpc" },+ { "DEPOSITOR", "dpt" },+ { "DRAFTSMAN", "drm" },+ { "DIRECTOR", "drt" },+ { "DESIGNER", "dsr" },+ { "DISTRIBUTOR", "dst" },+ { "DATA_CONTRIBUTOR", "dtc" },+ { "DEDICATEE", "dte" },+ { "DATA_MANAGER", "dtm" },+ { "DEDICATOR", "dto" },+ { "AUTHOR", "dub" },/* Dubious author */+ { "EDITOR", "edc" },/* Editor of compilation */+ { "EDITOR", "edm" },/* Editor of moving image work */+ { "EDITOR", "edt" },+ { "ENGRAVER", "egr" },+ { "ELECTRICIAN", "elg" },+ { "ELECTROTYPER", "elt" },+ { "ENGINEER", "eng" },+ { "ENACTING_JURISDICTION", "enj" },+ { "ETCHER", "etr" },+ { "EVENT_PLACE", "evp" },+ { "EXPERT", "exp" },+ { "FACSIMILIST", "fac" },+ { "FILM_DISTRIBUTOR", "fds" },+ { "FIELD_DIRECTOR", "fld" },+ { "EDITOR", "flm" },/* Film editor */+ { "DIRECTOR", "fmd" },/* Film director */+ { "FILMMAKER", "fmk" },+ { "FORMER_OWNER", "fmo" },+ { "PRODUCER", "fmp" },/* Film producer */+ { "FUNDER", "fnd" },+ { "FIRST_PARTY", "fpy" },+ { "FORGER", "frg" },+ { "GEOGRAPHIC_INFORMATION_SPECIALIST", "gis" },+ { "GRAPHIC_TECHNICIAN", "grt" },+ { "HOST_INSTITUTION", "his" },+ { "HONOREE", "hnr" },+ { "HOST", "hst" },+ { "ILLUSTRATOR", "ill" },+ { "ILLUMINATOR", "ilu" },+ { "INSCRIBER", "ins" },+ { "INVENTOR", "inv" },+ { "ISSUING_BODY", "isb" },+ { "MUSICIAN", "itr" },/* Instrumentalist */+ { "INTERVIEWEE", "ive" },+ { "INTERVIEWER", "ivr" },+ { "JUDGE", "jud" },+ { "JURISDICTION_GOVERNED", "jug" },+ { "LABORATORY", "lbr" },+ { "AUTHOR", "lbt" },/* Librettist */+ { "LABORATORY_DIRECTOR", "ldr" },+ { "LEAD", "led" },+ { "LIBELEE-APPELLEE", "lee" },+ { "LIBELEE", "lel" },+ { "LENDER", "len" },+ { "LIBELEE-APPELLANT", "let" },+ { "LIGHTING_DESIGNER", "lgd" },+ { "LIBELANT-APPELLEE", "lie" },+ { "LIBELANT", "lil" },+ { "LIBELANT-APPELLANT", "lit" },+ { "LANDSCAPE_ARCHITECT", "lsa" },+ { "LICENSEE", "lse" },+ { "LICENSOR", "lso" },+ { "LITHOGRAPHER", "ltg" },+ { "AUTHOR", "lyr" },/* Lyricist */+ { "MUSIC_COPYIST", "mcp" },+ { "METADATA_CONTACT", "mdc" },+ { "MEDIUM", "med" },+ { "MANUFACTURE_PLACE", "mfp" },+ { "MANUFACTURER", "mfr" },+ { "MODERATOR", "mod" },+ { "THESIS_EXAMINER", "mon" },/* Monitor */+ { "MARBLER", "mrb" },+ { "EDITOR", "mrk" },/* Markup editor */+ { "MUSICAL_DIRECTOR", "msd" },+ { "METAL-ENGRAVER", "mte" },+ { "MINUTE_TAKER", "mtk" },+ { "MUSICIAN", "mus" },+ { "NARRATOR", "nrt" },+ { "THESIS_OPPONENT", "opn" },/* Opponent */+ { "ORIGINATOR", "org" },+ { "ORGANIZER", "organizer of meeting" },+ { "ORGANIZER", "orm" },+ { "ONSCREEN_PRESENTER", "osp" },+ { "THESIS_OTHER", "oth" },/* Other */+ { "OWNER", "own" },+ { "PANELIST", "pan" },+ { "PATRON", "pat" },+ { "ASSIGNEE", "patent holder" },/* Patent holder */+ { "PUBLISHING_DIRECTOR", "pbd" },+ { "PUBLISHER", "pbl" },+ { "PROJECT_DIRECTOR", "pdr" },+ { "PROOFREADER", "pfr" },+ { "PHOTOGRAPHER", "pht" },+ { "PLATEMAKER", "plt" },+ { "PERMITTING_AGENCY", "pma" },+ { "PRODUCTION_MANAGER", "pmn" },+ { "PRINTER_OF_PLATES", "pop" },+ { "PAPERMAKER", "ppm" },+ { "PUPPETEER", "ppt" },+ { "PRAESES", "pra" },+ { "PROCESS_CONTRACT", "prc" },+ { "PRODUCTION_PERSONNEL", "prd" },+ { "PRESENTER", "pre" },+ { "PERFORMER", "prf" },+ { "AUTHOR", "prg" },/* Programmer */+ { "PRINTMAKER", "prm" },+ { "PRODUCTION_COMPANY", "prn" },+ { "PRODUCER", "pro" },+ { "PRODUCTION_PLACE", "prp" },+ { "PRODUCTION_DESIGNER", "prs" },+ { "PRINTER", "prt" },+ { "PROVIDER", "prv" },+ { "PATENT_APPLICANT", "pta" },+ { "PLAINTIFF-APPELLEE", "pte" },+ { "PLAINTIFF", "ptf" },+ { "ASSIGNEE", "pth" },/* Patent holder */+ { "PLAINTIFF-APPELLANT", "ptt" },+ { "PUBLICATION_PLACE", "pup" },+ { "RUBRICATOR", "rbr" },+ { "RECORDIST", "rcd" },+ { "RECORDING_ENGINEER", "rce" },+ { "ADDRESSEE", "rcp" },/* Recipient */+ { "RADIO_DIRECTOR", "rdd" },+ { "REDAKTOR", "red" },+ { "RENDERER", "ren" },+ { "RESEARCHER", "res" },+ { "REVIEWER", "rev" },+ { "RADIO_PRODUCER", "rpc" },+ { "REPOSITORY", "rps" },+ { "REPORTER", "rpt" },+ { "RESPONSIBLE_PARTY", "rpy" },+ { "RESPONDENT-APPELLEE", "rse" },+ { "RESTAGER", "rsg" },+ { "RESPONDENT", "rsp" },+ { "RESTORATIONIST", "rsr" },+ { "RESPONDENT-APPELLANT", "rst" },+ { "RESEARCH_TEAM_HEAD", "rth" },+ { "RESEARCH_TEAM_MEMBER", "rtm" },+ { "SCIENTIFIC_ADVISOR", "sad" },+ { "SCENARIST", "sce" },+ { "SCULPTOR", "scl" },+ { "SCRIBE", "scr" },+ { "SOUND_DESIGNER", "sds" },+ { "SECRETARY", "sec" },+ { "STAGE_DIRECTOR", "sgd" },+ { "SIGNER", "sgn" },+ { "SUPPORTING_HOST", "sht" },+ { "SELLER", "sll" },+ { "SINGER", "sng" },+ { "SPEAKER", "spk" },+ { "SPONSOR", "spn" },+ { "SECOND_PARTY", "spy" },+ { "SURVEYOR", "srv" },+ { "SET_DESIGNER", "std" },+ { "SETTING", "stg" },+ { "STORYTELLER", "stl" },+ { "STAGE_MANAGER", "stm" },+ { "STANDARDS_BODY", "stn" },+ { "STEREOTYPER", "str" },+ { "TECHNICAL_DIRECTOR", "tcd" },+ { "TEACHER", "tch" },+ { "THESIS_ADVISOR", "ths" },+ { "TELEVISION_DIRECTOR", "tld" },+ { "TELEVISION_PRODUCER", "tlp" },+ { "TRANSCRIBER", "trc" },+ { "TRANSLATOR", "translator" },+ { "TRANSLATOR", "trl" },+ { "TYPE_DIRECTOR", "tyd" },+ { "TYPOGRAPHER", "tyg" },+ { "UNIVERSITY_PLACE", "uvp" },+ { "VOICE_ACTOR", "vac" },+ { "VIDEOGRAPHER", "vdg" },+ { "VOCALIST", "voc" },+ { "AUTHOR", "wac" },/* Writer of added commentary */+ { "AUTHOR", "wal" },/* Writer of added lyrics */+ { "AUTHOR", "wam" },/* Writer of accompanying material */+ { "AUTHOR", "wat" },/* Writer of added text */+ { "WOODCUTTER", "wdc" },+ { "WOOD_ENGRAVER", "wde" },+ { "INTROAUTHOR", "win" },/* Writer of introduction */+ { "WITNESS", "wit" },+ { "INTROAUTHOR", "wpr" },/* Writer of preface */+ { "AUTHOR", "wst" },/* Writer of supplementary textual content */ }; static const int nrealtors = sizeof( relators ) / sizeof( relators[0] ); char *-marc_convertrole( const char *query )+marc_convert_role( const char *query ) { int i; @@ -431,27 +436,27 @@ } int-marc_findgenre( const char *query )+marc_find_genre( const char *query ) { return position_in_list( marc_genre, nmarc_genre, query ); } int-is_marc_genre( const char *query )+marc_find_resource( const char *query ) {- if ( marc_findgenre( query ) != -1 ) return 1;- else return 0;+ return position_in_list( marc_resource, nmarc_resource, query ); } int-marc_findresource( const char *query )+is_marc_genre( const char *query ) {- return position_in_list( marc_resource, nmarc_resource, query );+ if ( marc_find_genre( query ) != -1 ) return 1;+ else return 0; } int is_marc_resource( const char *query ) {- if ( marc_findresource( query ) != -1 ) return 1;+ if ( marc_find_resource( query ) != -1 ) return 1; else return 0; }
bibutils/marc_auth.h view
@@ -3,7 +3,7 @@ * * Recognize the MARC authority vocabulary for genre and resource. *- * Copyright (c) Chris Putnam 2008-2019+ * Copyright (c) Chris Putnam 2008-2020 * * Source code released under the GPL version 2 *@@ -11,10 +11,12 @@ #ifndef MARC_AUTH_H #define MARC_AUTH_H -int marc_findgenre( const char *query ); int is_marc_genre( const char *query );-int marc_findresource( const char *query ); int is_marc_resource( const char *query );-char *marc_convertrole( const char *query );++int marc_find_genre( const char *query );+int marc_find_resource( const char *query );++char *marc_convert_role( const char *query ); #endif
bibutils/medin.c view
@@ -1,7 +1,7 @@ /* * medin.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *@@ -169,7 +169,7 @@ { int fstatus, status = BIBL_OK; if ( xml_has_value( node ) ) {- fstatus = fields_add( info, "TITLE", xml_value_cstr( node ), 0 );+ fstatus = fields_add( info, "TITLE", xml_value_cstr( node ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } return status;@@ -283,7 +283,7 @@ if ( status!=BIBL_OK ) return status; } if ( xml_tag_matches( node, "Language" ) ) {- status = medin_language( node, info, 1 );+ status = medin_language( node, info, LEVEL_HOST ); if ( status!=BIBL_OK ) return status; } }@@ -314,7 +314,7 @@ p = str_cpytodelim( &sp, xml_value_cstr( node ), "-", 1 ); if ( str_memerr( &sp ) ) return BIBL_ERR_MEMERR; if ( str_has_value( &sp ) ) {- fstatus = fields_add( info, "PAGES:START", str_cstr( &sp ), 1 );+ fstatus = fields_add( info, "PAGES:START", str_cstr( &sp ), LEVEL_HOST ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; } (void) str_cpytodelim( &ep, p, "", 0 );@@ -325,7 +325,7 @@ sp.data[i] = ep.data[i-sp.len+ep.len]; pp = sp.data; } else pp = ep.data;- fstatus = fields_add( info, "PAGES:STOP", pp, 1 );+ fstatus = fields_add( info, "PAGES:STOP", pp, LEVEL_HOST ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; } strs_free( &sp, &ep, NULL );@@ -350,7 +350,7 @@ { int fstatus; if ( xml_tag_matches_has_value( node, "AbstractText" ) ) {- fstatus = fields_add( info, "ABSTRACT", xml_value_cstr( node ), 0 );+ fstatus = fields_add( info, "ABSTRACT", xml_value_cstr( node ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; } else if ( node->next ) return medin_abstract( node->next, info ); return BIBL_OK;@@ -409,28 +409,43 @@ static int medin_authorlist( xml *node, fields *info ) {- int fstatus, status;- str name;+ int fstatus, status = BIBL_OK; char *tag;+ str name;+ str_init( &name );+ node = node->down; while ( node ) {+ if ( xml_tag_matches( node, "Author" ) && node->down ) {+ status = medin_author( node->down, &name );+ if ( status!=BIBL_OK ) goto out;+ tag = "AUTHOR"; if ( str_is_empty( &name ) ) { status = medin_corpauthor( node->down, &name ); tag = "AUTHOR:CORP"; }- if ( str_memerr( &name ) || status!=BIBL_OK ) return BIBL_ERR_MEMERR;+ if ( str_memerr( &name ) || status!=BIBL_OK ) {+ status = BIBL_ERR_MEMERR;+ goto out;+ } if ( str_has_value( &name ) ) {- fstatus = fields_add(info,tag,name.data,0);- if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR;+ fstatus = fields_add( info, tag, str_cstr( &name ), LEVEL_MAIN );+ if ( fstatus!=FIELDS_OK ) {+ status = BIBL_ERR_MEMERR;+ goto out;+ } } str_empty( &name ); }+ node = node->next; }++out: str_free( &name ); return BIBL_OK; }@@ -548,9 +563,9 @@ else if ( xml_tag_matches( node, "AuthorList" ) ) status = medin_authorlist( node, info ); else if ( xml_tag_matches( node, "Language" ) )- status = medin_language( node, info, 0 );+ status = medin_language( node, info, LEVEL_MAIN ); else if ( xml_tag_matches( node, "Affiliation" ) ) {- fstatus = fields_add( info, "ADDRESS", xml_value_cstr( node ), 0 );+ fstatus = fields_add( info, "ADDRESS", xml_value_cstr( node ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR; } if ( status!=BIBL_OK ) return status;@@ -563,7 +578,7 @@ { int fstatus, status = BIBL_OK; if ( xml_tag_matches_has_value( node, "PMID" ) ) {- fstatus = fields_add( info, "PMID", xml_value_cstr( node ), 0 );+ fstatus = fields_add( info, "PMID", xml_value_cstr( node ), LEVEL_MAIN ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; } if ( node->down ) {@@ -615,13 +630,13 @@ /* assume everything is a journal article */ if ( fields_num( info ) ) {- status = fields_add( info, "RESOURCE", "text", 0 );+ status = fields_add( info, "RESOURCE", "text", LEVEL_MAIN ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR;- status = fields_add( info, "ISSUANCE", "continuing", 1 );+ status = fields_add( info, "ISSUANCE", "continuing", LEVEL_HOST ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR;- status = fields_add( info, "GENRE:MARC", "periodical", 1 );+ status = fields_add( info, "GENRE:MARC", "periodical", LEVEL_HOST ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR;- status = fields_add( info, "GENRE:BIBUTILS", "academic journal", 1 );+ status = fields_add( info, "GENRE:BIBUTILS", "academic journal", LEVEL_HOST ); if ( status!=FIELDS_OK ) return BIBL_ERR_MEMERR; status = BIBL_OK; }
bibutils/modsin.c view
@@ -1,7 +1,7 @@ /* * modsin.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *@@ -83,7 +83,7 @@ { int status = BIBL_OK; if ( xml_has_value( node ) ) {- if ( value->len ) str_addchar( value, ' ' );+ if ( str_has_value( value ) ) str_addchar( value, ' ' ); str_strcat( value, xml_value( node ) ); if ( str_memerr( value ) ) return BIBL_ERR_MEMERR; }@@ -99,27 +99,32 @@ static int modsin_detail( xml *node, fields *info, int level ) {- str type, value, *tp; int fstatus, status = BIBL_OK;- if ( node->down ) {- strs_init( &type, &value, NULL );- tp = xml_attribute( node, "type" );- if ( tp ) {- str_strcpy( &type, tp );- str_toupper( &type );- if ( str_memerr( &type ) ) goto out;- }- status = modsin_detailr( node->down, &value );- if ( status!=BIBL_OK ) goto out;- if ( type.data && !strcasecmp( type.data, "PAGE" ) ) {- fstatus = fields_add( info, "PAGES:START", value.data, level );- } else {- fstatus = fields_add( info, type.data, value.data, level );- }- if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR;-out:- strs_free( &type, &value, NULL );+ str type, value, *tp;++ if ( !node->down ) return BIBL_OK;++ strs_init( &type, &value, NULL );++ tp = xml_attribute( node, "type" );+ if ( tp ) {+ str_strcpy( &type, tp );+ str_toupper( &type );+ if ( str_memerr( &type ) ) goto out; }++ status = modsin_detailr( node->down, &value );+ if ( status!=BIBL_OK ) goto out;++ if ( str_has_value( &type ) && !strcasecmp( str_cstr( &type ), "PAGE" ) ) {+ fstatus = fields_add( info, "PAGES:START", str_cstr( &value ), level );+ } else {+ fstatus = fields_add( info, str_cstr( &type ), str_cstr( &value ), level );+ }+ if ( fstatus!=FIELDS_OK ) status = BIBL_ERR_MEMERR;++out:+ strs_free( &type, &value, NULL ); return status; } @@ -316,7 +321,7 @@ } /* ...take first match */ for ( i=0; i<tokens.n; ++i ) {- p = marc_convertrole( slist_cstr( &tokens, i ) );+ p = marc_convert_role( slist_cstr( &tokens, i ) ); if ( p ) { str_strcpyc( out, p ); goto done;@@ -931,8 +936,8 @@ static int modsin_recordinfo( xml *node, fields *info, int level ) {+ xml *curr, *down; int fstatus;- xml *curr; /* extract recordIdentifier */ curr = node;@@ -941,6 +946,12 @@ fstatus = fields_add( info, "REFNUM", xml_value_cstr( curr ), level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; }+ else if ( xml_tag_matches( curr, "languageOfCataloging" ) ) {+ if ( curr->down ) {+ down = curr->down;+ fstatus = fields_add( info, "LANGCATALOG", xml_value_cstr( down ), level );+ }+ } curr = curr->next; } return BIBL_OK;@@ -968,6 +979,7 @@ { "serial number", "SERIALNUMBER",0, 0 }, { "accessnum", "ACCESSNUM", 0, 0 }, { "jstor", "JSTOR", 0, 0 },+ { "eid", "EID", 0, 0 }, }; int i, fstatus, n = sizeof( ids ) / sizeof( ids[0] ); if ( node->value.len==0 ) return BIBL_OK;@@ -993,6 +1005,12 @@ int nsimple = sizeof( simple ) / sizeof( simple[0] ); int i, found = 0, status = BIBL_OK; + if ( xml_tag_has_attribute( node, "note", "type", "annotation" ) ) {+ status = modsin_simple( node, info, "ANNOTATION", level );+ if ( status!=BIBL_OK ) return status;+ found = 1;+ }+ for ( i=0; i<nsimple && found==0; i++ ) { if ( xml_tag_matches( node, simple[i].mods ) ) { status = modsin_simple( node, info, simple[i].internal, level );@@ -1087,16 +1105,21 @@ *****************************************************/ static char *-modsin_startptr( char *p )+modsin_startptr( char *p, char **next ) { char *startptr;+ *next = NULL; startptr = xml_find_start( p, "mods:mods" ); if ( startptr ) { /* set namespace if found */ xml_pns = modsns;+ *next = startptr + 9; } else { startptr = xml_find_start( p, "mods" );- if ( startptr ) xml_pns = NULL;+ if ( startptr ) {+ xml_pns = NULL;+ *next = startptr + 5;+ } } return startptr; }@@ -1112,7 +1135,7 @@ { str tmp; int m, file_charset = CHARSET_UNKNOWN;- char *startptr = NULL, *endptr = NULL;+ char *startptr = NULL, *nextptr, *endptr = NULL; str_init( &tmp ); @@ -1121,8 +1144,8 @@ if ( str_has_value( &tmp ) ) { m = xml_getencoding( &tmp ); if ( m!=CHARSET_UNKNOWN ) file_charset = m;- startptr = modsin_startptr( tmp.data );- endptr = modsin_endptr( tmp.data );+ startptr = modsin_startptr( tmp.data, &nextptr );+ if ( nextptr ) endptr = modsin_endptr( nextptr ); } else startptr = endptr = NULL; str_empty( line ); if ( startptr && endptr ) {
bibutils/modsout.c view
@@ -1,7 +1,7 @@ /* * modsout.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *@@ -218,7 +218,7 @@ /* output shorttitle if it's different from normal title */ if ( shrttl!=FIELDS_NOTFOUND ) { val = (char *) fields_value( f, shrttl, FIELDS_CHRP );- if ( ttl==FIELDS_NOTFOUND || subttl!=FIELDS_NOTFOUND || strcmp(f->data[ttl].data,val) ) {+ if ( ttl==FIELDS_NOTFOUND || subttl!=FIELDS_NOTFOUND || strcmp(fields_value(f,ttl,FIELDS_CHRP),val) ) { output_tag( outptr, lvl2indent(level), "titleInfo", NULL, TAG_OPEN, TAG_NEWLINE, "type", "abbreviated", NULL ); output_tag( outptr, lvl2indent(incr_level(level,1)), "title", val, TAG_OPENCLOSE, TAG_NEWLINE, NULL ); output_tag( outptr, lvl2indent(level), "titleInfo", NULL, TAG_CLOSE, TAG_NEWLINE, NULL );@@ -337,7 +337,7 @@ for ( n=0; n<ntypes; ++n ) { for ( i=0; i<nfields; ++i ) { if ( fields_level( f, i )!=level ) continue;- if ( f->data[i].len==0 ) continue;+ if ( fields_no_value( f, i ) ) continue; f_asis = f_corp = f_conf = 0; str_strcpyc( &role, f->tag[i].data ); if ( str_findreplace( &role, ":ASIS", "" )) f_asis=1;@@ -355,7 +355,7 @@ output_tag( outptr, lvl2indent(level), "name", NULL, TAG_OPEN, TAG_NEWLINE, "type", "conference", NULL ); output_fil( outptr, lvl2indent(incr_level(level,1)), "namePart", f, i, TAG_OPENCLOSE, TAG_NEWLINE, NULL ); } else {- output_name(outptr, f->data[i].data, level);+ output_name(outptr, fields_value( f, i, FIELDS_CHRP ), level); } output_tag( outptr, lvl2indent(incr_level(level,1)), "role", NULL, TAG_OPEN, TAG_NEWLINE, NULL ); if ( names[n].code & MARC_AUTHORITY )@@ -364,7 +364,7 @@ output_tag( outptr, lvl2indent(incr_level(level,2)), "roleTerm", names[n].mods, TAG_OPENCLOSE, TAG_NEWLINE, "type", "text", NULL ); output_tag( outptr, lvl2indent(incr_level(level,1)), "role", NULL, TAG_CLOSE, TAG_NEWLINE, NULL ); output_tag( outptr, lvl2indent(level), "name", NULL, TAG_CLOSE, TAG_NEWLINE, NULL );- fields_setused( f, i );+ fields_set_used( f, i ); } } str_free( &role );@@ -826,7 +826,7 @@ /* silence warnings about INTERNAL_TYPE being unused */ n = fields_find( f, "INTERNAL_TYPE", LEVEL_MAIN );- if ( n!=FIELDS_NOTFOUND ) fields_setused( f, n );+ if ( n!=FIELDS_NOTFOUND ) fields_set_used( f, n ); output_resource( f, outptr, level ); output_genre( f, outptr, level );
bibutils/modstypes.c view
@@ -1,7 +1,7 @@ /* * modstypes.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *
bibutils/name.c view
@@ -3,7 +3,7 @@ * * mangle names w/ and w/o commas *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *@@ -312,6 +312,7 @@ str_strcat( name, s ); } else add_given_split( name, s ); }+ return 1; } @@ -332,7 +333,7 @@ for ( i=begin; i<end && comma==-1; i++ ) { if ( i==suffixpos ) continue; s = slist_str( tokens, i );- if ( s->data[ s->len -1 ] == ',' ) {+ if ( s->data[ s->len - 1 ] == ',' ) { if ( suffix && i==suffixpos-1 && !(suffix&WITHCOMMA) ) str_trimend( s, 1 ); else@@ -369,7 +370,8 @@ str_init( &name ); name_construct_multi( &name, tokens, begin, end );- status = fields_add_can_dup( info, tag, name.data, level );++ status = fields_add_can_dup( info, tag, str_cstr( &name ), level ); if ( status!=FIELDS_OK ) ok = 0; str_free( &name );@@ -385,7 +387,7 @@ * is set). */ int-name_addsingleelement( fields *info, const char *tag, const char *name, int level, int corp )+name_addsingleelement( fields *info, const char *tag, const char *name, int level, int asiscorp ) { int status, ok = 1; str outtag;@@ -393,8 +395,8 @@ str_init( &outtag ); str_strcpyc( &outtag, tag );- if ( !corp ) str_strcatc( &outtag, ":ASIS" );- else str_strcatc( &outtag, ":CORP" );+ if ( asiscorp == NAME_ASIS ) str_strcatc( &outtag, ":ASIS" );+ else if ( asiscorp == NAME_CORP ) str_strcatc( &outtag, ":CORP" ); status = fields_add_can_dup( info, outtag.data, name, level ); if ( status!=FIELDS_OK ) ok = 0;@@ -518,9 +520,9 @@ ok = ( status==FIELDS_OK ) ? 1 : 0; } else if ( nametype==2 )- ok = name_addsingleelement( info, tag, outname.data, level, 0 );+ ok = name_addsingleelement( info, tag, outname.data, level, NAME_ASIS ); else- ok = name_addsingleelement( info, tag, outname.data, level, 1 );+ ok = name_addsingleelement( info, tag, outname.data, level, NAME_CORP ); if ( !ok ) { ret = 0; goto out; }
bibutils/name.h view
@@ -11,6 +11,10 @@ #ifndef NAME_H #define NAME_H +#define NAME_SIMPLE (0)+#define NAME_ASIS (1)+#define NAME_CORP (2)+ #include "str.h" #include "slist.h" #include "fields.h"@@ -18,7 +22,7 @@ int name_add( fields *info, const char *tag, const char *q, int level, slist *asis, slist *corps ); void name_build_withcomma( str *s, const char *p ); int name_parse( str *outname, str *inname, slist *asis, slist *corps );-int name_addsingleelement( fields *info, const char *tag, const char *name, int level, int corp );+int name_addsingleelement( fields *info, const char *tag, const char *name, int level, int asiscorp ); int name_addmultielement( fields *info, const char *tag, slist *tokens, int begin, int end, int level ); int name_findetal( slist *tokens );
bibutils/nbibin.c view
@@ -1,7 +1,7 @@ /* * nbibin.c *- * Copyright (c) Chris Putnam 2016-2019+ * Copyright (c) Chris Putnam 2016-2020 * * Source code released under the GPL version 2 *
bibutils/nbibout.c view
@@ -1,7 +1,7 @@ /* * nbibout.c *- * Copyright (c) Chris Putnam 2018-2019+ * Copyright (c) Chris Putnam 2018-2020 * * Source code released under the GPL version 2 *
bibutils/nbibtypes.c view
@@ -1,7 +1,7 @@ /* * nbibtypes.c *- * Copyright (c) Chris Putnam 2016-2019+ * Copyright (c) Chris Putnam 2016-2020 * * Program and source code released under the GPL version 2 *
bibutils/notes.c view
@@ -1,7 +1,7 @@ /* * notes.c *- * Copyright (c) Chris Putnam 2016-2019+ * Copyright (c) Chris Putnam 2016-2020 * * Program and source code released under the GPL version 2 *
bibutils/pages.c view
@@ -1,7 +1,7 @@ /* * pages.c *- * Copyright (c) Chris Putnam 2016-2019+ * Copyright (c) Chris Putnam 2016-2020 * * Program and source code released under GPL verison 2 */
bibutils/reftypes.c view
@@ -1,7 +1,7 @@ /* * reftypes.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *
bibutils/risin.c view
@@ -1,7 +1,7 @@ /* * risin.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *@@ -349,7 +349,7 @@ m = is_uri_file_scheme( str_cstr( invalue ) ); if ( m ) { /* skip past "file:" and store only actual path */- p = invalue->data + m;+ p = str_cstr( invalue ) + m; fstatus = fields_add( bibout, outtag, p, level ); if ( fstatus==FIELDS_OK ) return BIBL_OK; else return BIBL_ERR_MEMERR;@@ -376,7 +376,7 @@ int fstatus, doi; doi = is_doi( str_cstr( invalue ) ); if ( doi!=-1 ) {- fstatus = fields_add( bibout, "DOI", &(invalue->data[doi]), level );+ fstatus = fields_add( bibout, "DOI", str_cstr( invalue ) + doi, level ); if ( fstatus!=FIELDS_OK ) return BIBL_ERR_MEMERR; } return BIBL_OK;
bibutils/risout.c view
@@ -1,7 +1,7 @@ /* * risout.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *@@ -164,7 +164,7 @@ verbose_type_assignment( char *tag, char *value, param *p, int type ) { if ( p->progname ) fprintf( stderr, "%s: ", p->progname );- fprintf( stderr, "Type from tag '%s' data '%s': ", tag, value );+ fprintf( stderr, "Type from tag '%s' value '%s': ", tag, value ); write_type( stderr, type ); fprintf( stderr, "\n" ); }@@ -286,19 +286,13 @@ { int type = TYPE_UNKNOWN; int i, monographic = 0, monographic_level = 0;-// int text = 0; for ( i=0; i<f->n; ++i ) { if ( !strcasecmp( (char *) fields_tag( f, i, FIELDS_CHRP_NOUSE ), "issuance" ) && !strcasecmp( (char *) fields_value( f, i, FIELDS_CHRP_NOUSE ), "MONOGRAPHIC" ) ){ monographic = 1; monographic_level = f->level[i]; }-// if ( !strcasecmp( (char *) fields_tag( f, i, FIELDS_CHRP_NOUSE ), "typeOfResource" ) &&-// !strcasecmp( (char *) fields_value( f, i, FIELDS_CHRP_NOUSE ), "text" ) ) {-// text = 1;-// } }-// if ( monographic && text ) { if ( monographic ) { if ( monographic_level==0 ) type=TYPE_BOOK; else if ( monographic_level>0 ) type=TYPE_INBOOK;@@ -505,22 +499,6 @@ } static void-append_keywords( fields *in, fields *out, int *status )-{- vplist_index i;- int fstatus;- vplist vpl;-- vplist_init( &vpl );- fields_findv_each( in, LEVEL_ANY, FIELDS_CHRP, &vpl, "KEYWORD" );- for ( i=0; i<vpl.n; ++i ) {- fstatus = fields_add( out, "KW", ( char * ) vplist_get( &vpl, i ), LEVEL_MAIN );- if ( fstatus!=FIELDS_OK ) *status = BIBL_ERR_MEMERR;- }- vplist_free( &vpl );-}--static void append_urls( fields *in, fields *out, int *status ) { int lstatus;@@ -694,7 +672,7 @@ append_easy ( in, "DEGREEGRANTOR:ASIS", "PB", LEVEL_ANY, out, &status ); append_easy ( in, "DEGREEGRANTOR:CORP", "PB", LEVEL_ANY, out, &status ); append_easy ( in, "ADDRESS", "CY", LEVEL_ANY, out, &status );- append_keywords ( in, out, &status );+ append_easyall ( in, "KEYWORD", "KW", LEVEL_ANY, out, &status ); append_easy ( in, "ABSTRACT", "AB", LEVEL_ANY, out, &status ); append_easy ( in, "CALLNUMBER", "CN", LEVEL_ANY, out, &status ); append_easy ( in, "ISSN", "SN", LEVEL_ANY, out, &status );
bibutils/ristypes.c view
@@ -1,7 +1,7 @@ /* * ristypes.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 *
bibutils/serialno.c view
@@ -1,7 +1,7 @@ /* * serialno.c *- * Copyright (c) Chris Putnam 2005-2019+ * Copyright (c) Chris Putnam 2005-2020 * * Source code released under the GPL version 2 *
bibutils/slist.c view
@@ -3,7 +3,7 @@ * * version: 2019-01-14 *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *
bibutils/str.c view
@@ -3,7 +3,7 @@ * * Version: 2018-09-21 *- * Copyright (c) Chris Putnam 1999-2019+ * Copyright (c) Chris Putnam 1999-2020 * * Source code released under the GPL version 2 *
bibutils/str_conv.c view
@@ -1,7 +1,7 @@ /* * str_conv.c *- * Copyright (c) Chris Putnam 1999-2019+ * Copyright (c) Chris Putnam 1999-2020 * * Source code released under the GPL version 2 *
bibutils/strsearch.c view
@@ -1,6 +1,6 @@ /* strsearch.c *- * Copyright (c) Chris Putnam 1995-2019+ * Copyright (c) Chris Putnam 1995-2020 * * Source code released under the GPL version 2 *
bibutils/title.c view
@@ -3,7 +3,7 @@ * * process titles into title/subtitle pairs for MODS *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *
bibutils/type.c view
@@ -1,7 +1,7 @@ /* * type.c *- * Copyright (c) Chris Putnam 2003-2019+ * Copyright (c) Chris Putnam 2003-2020 * * Source code released under the GPL version 2 */
bibutils/url.c view
@@ -9,7 +9,7 @@ * is_doi() * Check for DOI buried in another field. *- * Copyright (c) Chris Putnam 2008-2019+ * Copyright (c) Chris Putnam 2008-2020 * * Source code released under the GPL version 2 *@@ -202,12 +202,14 @@ static int nextraprefixes = sizeof( extraprefixes ) / sizeof( extraprefixes[0] ); static int-find_prefix( char *s, url_t *p, int np )+find_prefix( const char *s, url_t *p, int np ) { int i; - for ( i=0; i<np; ++i )- if ( !strncmp( p[i].prefix, s, p[i].offset ) ) return i;+ if ( s ) {+ for ( i=0; i<np; ++i )+ if ( !strncmp( p[i].prefix, s, p[i].offset ) ) return i;+ } return -1; }
bibutils/utf8.c view
@@ -1,7 +1,7 @@ /* * utf8.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *
bibutils/vplist.c view
@@ -3,7 +3,7 @@ * * Version: 1/9/2017 *- * Copyright (c) Chris Putnam 2011-2019+ * Copyright (c) Chris Putnam 2011-2020 * * Source code released under the GPL version 2 *
bibutils/wordin.c view
@@ -1,7 +1,7 @@ /* * wordin.c *- * Copyright (c) Chris Putnam 2010-2019+ * Copyright (c) Chris Putnam 2010-2020 * * Source code released under the GPL version 2 *
bibutils/wordout.c view
@@ -3,7 +3,7 @@ * * (Word 2007 format) *- * Copyright (c) Chris Putnam 2007-2019+ * Copyright (c) Chris Putnam 2007-2020 * * Source code released under the GPL version 2 *@@ -122,39 +122,47 @@ TYPE_PHDTHESIS, }; -/*- * fixed output- */ static void-output_fixed( FILE *outptr, char *tag, char *value, int level )+output_level( FILE *outptr, int level ) { int i;- for ( i=0; i<level; ++i ) fprintf( outptr, " " );+ for ( i=0; i<level; ++i )+ fprintf( outptr, " " );+}++/* fixed output+ *+ * <TAG>value</TAG>+ */+static void+output_fixed( FILE *outptr, const char *tag, const char *value, int level )+{+ output_level( outptr, level ); fprintf( outptr, "<%s>%s</%s>\n", tag, value, tag ); } /* detail output *+ * <TAG>value</TAG> */ static void-output_item( fields *info, FILE *outptr, char *tag, char *prefix, int item, int level )+output_item( fields *info, FILE *outptr, const char *tag, const char *prefix, int item, int level ) {- int i;- if ( item==-1 ) return;- for ( i=0; i<level; ++i ) fprintf( outptr, " " );- fprintf( outptr, "<%s>%s%s</%s>\n",- tag,- prefix,- (char*) fields_value( info, item, FIELDS_CHRP ),- tag- );+ if ( item!=-1 ) {+ output_level( outptr, level );+ fprintf( outptr, "<%s>%s%s</%s>\n",+ tag,+ prefix,+ (char*) fields_value( info, item, FIELDS_CHRP ),+ tag+ );+ } } static void-output_itemv( FILE *outptr, char *tag, char *item, int level )+output_itemv( FILE *outptr, const char *tag, const char *item, int level ) {- int i;- for ( i=0; i<level; ++i ) fprintf( outptr, " " );+ output_level( outptr, level ); fprintf( outptr, "<%s>%s</%s>\n", tag, item, tag ); } @@ -164,19 +172,14 @@ * */ static void-output_range( FILE *outptr, char *tag, char *start, char *end, int level )+output_range( FILE *outptr, const char *tag, const char *start, const char *end, int level ) {- int i;- if ( start==NULL && end==NULL ) return;- if ( start==NULL )- output_itemv( outptr, tag, end, 0 );- else if ( end==NULL )- output_itemv( outptr, tag, start, 0 );- else {- for ( i=0; i<level; ++i )- fprintf( outptr, " " );+ if ( start && end ) {+ output_level( outptr, level ); fprintf( outptr, "<%s>%s-%s</%s>\n", tag, start, end, tag ); }+ else if ( start ) output_itemv( outptr, tag, start, level );+ else if ( end ) output_itemv( outptr, tag, end, level ); } static void@@ -192,7 +195,7 @@ typedef struct outtype { int value;- char *out;+ const char *out; } outtype; static@@ -224,11 +227,11 @@ get_type_from_genre( fields *info ) { int type = TYPE_UNKNOWN, i, j, level;- char *genre, *tag;+ const char *genre, *tag; for ( i=0; i<info->n; ++i ) {- tag = (char *) fields_tag( info, i, FIELDS_CHRP );+ tag = (const char *) fields_tag( info, i, FIELDS_CHRP ); if ( strcasecmp( tag, "GENRE:MARC" ) && strcasecmp( tag, "GENRE:BIBUTILS" ) && strcasecmp( tag, "GENRE:UNKNOWN" ) ) continue;- genre = (char *) fields_value( info, i, FIELDS_CHRP );+ genre = (const char *) fields_value( info, i, FIELDS_CHRP ); for ( j=0; j<ngenres; ++j ) { if ( !strcasecmp( genres[j].out, genre ) ) type = genres[j].value;@@ -291,7 +294,7 @@ } static void-output_titlebits( char *mainttl, char *subttl, FILE *outptr )+output_titlebits( const char *mainttl, const char *subttl, FILE *outptr ) { if ( mainttl ) fprintf( outptr, "%s", mainttl ); if ( subttl ) {@@ -305,7 +308,7 @@ } static void-output_titleinfo( char *mainttl, char *subttl, FILE *outptr, char *tag, int level )+output_titleinfo( const char *mainttl, const char *subttl, FILE *outptr, const char *tag, int level ) { if ( mainttl || subttl ) { fprintf( outptr, "<%s>", tag );@@ -315,12 +318,12 @@ } static void-output_generaltitle( fields *info, FILE *outptr, char *tag, int level )+output_generaltitle( fields *info, FILE *outptr, const char *tag, int level ) {- char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" );- char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" );- char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" );- char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" );+ const char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" );+ const char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" );+ const char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" );+ const char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" ); if ( ttl ) { output_titleinfo( ttl, subttl, outptr, tag, level );@@ -333,10 +336,10 @@ static void output_maintitle( fields *info, FILE *outptr, int level ) {- char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" );- char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" );- char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" );- char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" );+ const char *ttl = fields_findv( info, level, FIELDS_CHRP, "TITLE" );+ const char *subttl = fields_findv( info, level, FIELDS_CHRP, "SUBTITLE" );+ const char *shrttl = fields_findv( info, level, FIELDS_CHRP, "SHORTTITLE" );+ const char *shrsubttl = fields_findv( info, level, FIELDS_CHRP, "SHORTSUBTITLE" ); if ( ttl ) { output_titleinfo( ttl, subttl, outptr, "b:Title", level );@@ -356,7 +359,7 @@ } static void-output_name_nomangle( FILE *outptr, char *p )+output_name_nomangle( FILE *outptr, const char *p ) { fprintf( outptr, "<b:Person>" ); fprintf( outptr, "<b:Last>%s</b:Last>", p );@@ -364,7 +367,7 @@ } static void-output_name( FILE *outptr, char *p )+output_name( FILE *outptr, const char *p ) { str family, part; int n=0, npart=0;@@ -417,8 +420,7 @@ } static void-output_name_type( fields *info, FILE *outptr, int level, - char *map[], int nmap, char *tag )+output_name_type( fields *info, FILE *outptr, int level, char *map[], int nmap, const char *tag ) { str ntag; int i, j, n=0, code, nfields;@@ -469,11 +471,11 @@ static void output_date( fields *info, FILE *outptr, int level ) {- char *year = fields_findv_firstof( info, level, FIELDS_CHRP,+ const char *year = fields_findv_firstof( info, level, FIELDS_CHRP, "PARTDATE:YEAR", "DATE:YEAR", NULL );- char *month = fields_findv_firstof( info, level, FIELDS_CHRP,+ const char *month = fields_findv_firstof( info, level, FIELDS_CHRP, "PARTDATE:MONTH", "DATE:MONTH", NULL );- char *day = fields_findv_firstof( info, level, FIELDS_CHRP,+ const char *day = fields_findv_firstof( info, level, FIELDS_CHRP, "PARTDATE:DAY", "DATE:DAY", NULL ); if ( year ) output_itemv( outptr, "b:Year", year, 0 ); if ( month ) output_itemv( outptr, "b:Month", month, 0 );@@ -483,9 +485,9 @@ static void output_pages( fields *info, FILE *outptr, int level ) {- char *sn = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "PAGES:START" );- char *en = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "PAGES:STOP" );- char *ar = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "ARTICLENUMBER" );+ const char *sn = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "PAGES:START" );+ const char *en = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "PAGES:STOP" );+ const char *ar = fields_findv( info, LEVEL_ANY, FIELDS_CHRP, "ARTICLENUMBER" ); if ( sn || en ) output_range( outptr, "b:Pages", sn, en, level ); else if ( ar )@@ -586,9 +588,9 @@ static void output_comments( fields *info, FILE *outptr, int level ) {+ const char *abs; vplist_index i; vplist notes;- char *abs; vplist_init( ¬es ); @@ -607,7 +609,7 @@ static void output_bibkey( fields *info, FILE *outptr ) {- char *bibkey = fields_findv_firstof( info, LEVEL_ANY, FIELDS_CHRP,+ const char *bibkey = fields_findv_firstof( info, LEVEL_ANY, FIELDS_CHRP, "REFNUM", "BIBKEY", NULL ); if ( bibkey ) output_itemv( outptr, "b:Tag", bibkey, 0 ); }
bibutils/xml.c view
@@ -1,7 +1,7 @@ /* * xml.c *- * Copyright (c) Chris Putnam 2004-2019+ * Copyright (c) Chris Putnam 2004-2020 * * Source code released under the GPL version 2 *
bibutils/xml_encoding.c view
@@ -1,7 +1,7 @@ /* * xml_getencoding.c *- * Copyright (c) Chris Putnam 2007-2019+ * Copyright (c) Chris Putnam 2007-2020 * * Source code released under the GPL version 2 *
hs-bibutils.cabal view
@@ -1,5 +1,5 @@ name: hs-bibutils-version: 6.8.0.0+version: 6.10.0.0 homepage: https://github.com/wilx/hs-bibutils synopsis: Haskell bindings to bibutils, the bibliography@@ -28,34 +28,36 @@ build-type: Simple extra-source-files: bibutils/adsout.c bibutils/adsout_journals.c bibutils/bibcore.c- bibutils/bibformats.h bibutils/biblatexin.c bibutils/bibl.c- bibutils/bibl.h bibutils/bibtexin.c bibutils/bibtexout.c- bibutils/bibtextypes.c bibutils/bibutils.c bibutils/bibutils.h- bibutils/bltypes.c bibutils/bu_auth.c bibutils/bu_auth.h- bibutils/charsets.c bibutils/charsets.h bibutils/copacin.c- bibutils/copactypes.c bibutils/ebiin.c bibutils/endin.c- bibutils/endout.c bibutils/endtypes.c bibutils/endxmlin.c- bibutils/entities.c bibutils/entities.h bibutils/fields.c- bibutils/fields.h bibutils/gb18030.c bibutils/gb18030_enumeration.c- bibutils/gb18030.h bibutils/generic.c bibutils/generic.h- bibutils/intlist.c bibutils/intlist.h bibutils/isiin.c- bibutils/isiout.c bibutils/isitypes.c bibutils/iso639_1.c- bibutils/iso639_1.h bibutils/iso639_2.c bibutils/iso639_2.h- bibutils/iso639_3.c bibutils/iso639_3.h bibutils/is_ws.c- bibutils/is_ws.h bibutils/latex.c bibutils/latex.h- bibutils/marc_auth.c bibutils/marc_auth.h bibutils/medin.c- bibutils/modsin.c bibutils/modsout.c bibutils/modstypes.c- bibutils/modstypes.h bibutils/name.c bibutils/name.h- bibutils/nbibin.c bibutils/nbibout.c bibutils/nbibtypes.c- bibutils/notes.c bibutils/notes.h bibutils/pages.c bibutils/pages.h- bibutils/reftypes.c bibutils/reftypes.h bibutils/risin.c- bibutils/risout.c bibutils/ristypes.c bibutils/serialno.c- bibutils/serialno.h bibutils/slist.c bibutils/slist.h bibutils/str.c- bibutils/str_conv.c bibutils/str_conv.h bibutils/str.h- bibutils/strsearch.c bibutils/strsearch.h bibutils/title.c- bibutils/title.h bibutils/type.c bibutils/type.h bibutils/unicode.c- bibutils/unicode.h bibutils/url.c bibutils/url.h bibutils/utf8.c- bibutils/utf8.h bibutils/vplist.c bibutils/vplist.h bibutils/wordin.c+ bibutils/bibdefs.h bibutils/bibformats.h bibutils/biblatexin.c+ bibutils/biblatexout.c bibutils/bibl.c bibutils/bibl.h+ bibutils/bibtexin.c bibutils/bibtexout.c bibutils/bibtextypes.c+ bibutils/bibutils.c bibutils/bibutils.h bibutils/bltypes.c+ bibutils/bu_auth.c bibutils/bu_auth.h bibutils/charsets.c+ bibutils/charsets.h bibutils/copacin.c bibutils/copactypes.c+ bibutils/ebiin.c bibutils/endin.c bibutils/endout.c+ bibutils/endtypes.c bibutils/endxmlin.c bibutils/entities.c+ bibutils/entities.h bibutils/fields.c bibutils/fields.h+ bibutils/gb18030.c bibutils/gb18030_enumeration.c bibutils/gb18030.h+ bibutils/generic.c bibutils/generic.h bibutils/intlist.c+ bibutils/intlist.h bibutils/isiin.c bibutils/isiout.c+ bibutils/isitypes.c bibutils/iso639_1.c bibutils/iso639_1.h+ bibutils/iso639_2.c bibutils/iso639_2.h bibutils/iso639_3.c+ bibutils/iso639_3.h bibutils/is_ws.c bibutils/is_ws.h+ bibutils/latex.c bibutils/latex.h bibutils/latex_parse.c+ bibutils/latex_parse.h bibutils/marc_auth.c bibutils/marc_auth.h+ bibutils/medin.c bibutils/modsin.c bibutils/modsout.c+ bibutils/modstypes.c bibutils/modstypes.h bibutils/name.c+ bibutils/name.h bibutils/nbibin.c bibutils/nbibout.c+ bibutils/nbibtypes.c bibutils/notes.c bibutils/notes.h+ bibutils/pages.c bibutils/pages.h bibutils/reftypes.c+ bibutils/reftypes.h bibutils/risin.c bibutils/risout.c+ bibutils/ristypes.c bibutils/serialno.c bibutils/serialno.h+ bibutils/slist.c bibutils/slist.h bibutils/str.c bibutils/str_conv.c+ bibutils/str_conv.h bibutils/str.h bibutils/strsearch.c+ bibutils/strsearch.h bibutils/title.c bibutils/title.h+ bibutils/type.c bibutils/type.h bibutils/unicode.c bibutils/unicode.h+ bibutils/url.c bibutils/url.h bibutils/utf8.c bibutils/utf8.h+ bibutils/vplist.c bibutils/vplist.h bibutils/wordin.c bibutils/wordout.c bibutils/xml.c bibutils/xml_encoding.c bibutils/xml_encoding.h bibutils/xml.h README.md ChangeLog.md @@ -71,26 +73,26 @@ c-sources: cbits/stub.c bibutils/adsout.c bibutils/adsout_journals.c bibutils/bibcore.c- bibutils/biblatexin.c bibutils/bibl.c bibutils/bibtexin.c- bibutils/bibtexout.c bibutils/bibtextypes.c bibutils/bibutils.c- bibutils/bltypes.c bibutils/bu_auth.c bibutils/charsets.c- bibutils/copacin.c bibutils/copactypes.c bibutils/ebiin.c- bibutils/endin.c bibutils/endout.c bibutils/endtypes.c- bibutils/endxmlin.c bibutils/entities.c bibutils/fields.c- bibutils/gb18030.c bibutils/generic.c bibutils/intlist.c- bibutils/isiin.c bibutils/isiout.c bibutils/isitypes.c- bibutils/iso639_1.c bibutils/iso639_2.c bibutils/iso639_3.c- bibutils/is_ws.c bibutils/latex.c bibutils/marc_auth.c- bibutils/medin.c bibutils/modsin.c bibutils/modsout.c- bibutils/modstypes.c bibutils/name.c bibutils/nbibin.c- bibutils/nbibout.c bibutils/nbibtypes.c bibutils/notes.c- bibutils/pages.c bibutils/reftypes.c bibutils/risin.c- bibutils/risout.c bibutils/ristypes.c bibutils/serialno.c- bibutils/slist.c bibutils/str.c bibutils/str_conv.c- bibutils/strsearch.c bibutils/title.c bibutils/type.c- bibutils/unicode.c bibutils/url.c bibutils/utf8.c bibutils/vplist.c- bibutils/wordin.c bibutils/wordout.c bibutils/xml.c- bibutils/xml_encoding.c+ bibutils/biblatexin.c bibutils/biblatexout.c bibutils/bibl.c+ bibutils/bibtexin.c bibutils/bibtexout.c bibutils/bibtextypes.c+ bibutils/bibutils.c bibutils/bltypes.c bibutils/bu_auth.c+ bibutils/charsets.c bibutils/copacin.c bibutils/copactypes.c+ bibutils/ebiin.c bibutils/endin.c bibutils/endout.c+ bibutils/endtypes.c bibutils/endxmlin.c bibutils/entities.c+ bibutils/fields.c bibutils/gb18030.c bibutils/generic.c+ bibutils/intlist.c bibutils/isiin.c bibutils/isiout.c+ bibutils/isitypes.c bibutils/iso639_1.c bibutils/iso639_2.c+ bibutils/iso639_3.c bibutils/is_ws.c bibutils/latex.c+ bibutils/latex_parse.c bibutils/marc_auth.c bibutils/medin.c+ bibutils/modsin.c bibutils/modsout.c bibutils/modstypes.c+ bibutils/name.c bibutils/nbibin.c bibutils/nbibout.c+ bibutils/nbibtypes.c bibutils/notes.c bibutils/pages.c+ bibutils/reftypes.c bibutils/risin.c bibutils/risout.c+ bibutils/ristypes.c bibutils/serialno.c bibutils/slist.c+ bibutils/str.c bibutils/str_conv.c bibutils/strsearch.c+ bibutils/title.c bibutils/type.c bibutils/unicode.c bibutils/url.c+ bibutils/utf8.c bibutils/vplist.c bibutils/wordin.c+ bibutils/wordout.c bibutils/xml.c bibutils/xml_encoding.c if impl(ghc >= 6.10) build-depends: base >= 4, syb
src/Text/Bibutils.hsc view
@@ -137,13 +137,13 @@ -- | A type for storing the C struct with the bibliography data. -- Mostly opaque to the Haskell side. See 'numberOfRefs' to retrieve -- the number of references stored in the struct.-newtype Bibl = Bibl { nrefs :: CLong }+newtype Bibl = Bibl { n :: CLong } instance Storable Bibl where sizeOf _ = #{size bibl} alignment _ = #{alignment bibl}- peek p = #{peek bibl, nrefs } p >>= return . Bibl- poke p (Bibl n) = #{poke bibl, nrefs } p n+ peek p = #{peek bibl, n } p >>= return . Bibl+ poke p (Bibl x) = #{poke bibl, n } p x -- | Initialize the 'Bibl' C struct. Usually the first function being -- called.@@ -160,7 +160,7 @@ -- | Retrieve the number of references from a 'Bibl' C struct. numberOfRefs :: ForeignPtr Bibl -> IO Int numberOfRefs b- = withForeignPtr b $ \cb -> peek cb >>= return . fromIntegral . nrefs+ = withForeignPtr b $ \cb -> peek cb >>= return . fromIntegral . n -- | A type for storing the Param C struct. It should be accessed with -- the functions provided, such as 'setCharsetIn', etc.@@ -395,7 +395,7 @@ c_bibl_addtocorps cparam centry bibl_reporterr :: Status -> IO ()-bibl_reporterr (Status n) = c_bibl_reporterr n+bibl_reporterr (Status st) = c_bibl_reporterr st newtype BiblioIn = BiblioIn { unBiblioIn :: CInt } deriving ( Eq )