
Я работаю как на Windows, так и на OS X. На Mac мне нравится BibDesk и то, как он отображает ключевые слова и связанные файлы. На Windows я использую JabRef, который хорош, но не BibDesk.
Основная проблема, с которой я сталкиваюсь, заключается в том, как сохраняются файлы. Я храню свои .bib
файлы в git, и когда я открываю файл в одном приложении, редактирую какую-то запись и сохраняю файл, все записи изменяются, поэтому git diffs не являются показателем того, что на самом деле было изменено. Например, вот как одна запись сохраняется BibDesk:
@article{bib:farzaneh,
Author = {Seyed Amir Farzaneh and Mehran Sohrabi},
Date-Added = {2015-02-09 19:04:24 +0000},
Date-Modified = {2015-02-09 19:06:24 +0000},
Journal = {Chemical Engineering Research and Design},
Keywords = {CO2 foam, heavy oil recovery, foam flood, foam stability, alkaline, surfactant screening},
Pages = {375-389},
Title = {Experimental investigation of CO2-foam stability improvement by alkaline in the presence of crude oil},
Volume = {94},
Year = {2015},
Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QUy4uL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRm0hcLGBlXTlMuZGF0YU8RAkgAAAAAAkgAAgAADk1haW4gUGFydGl0aW9uAAAAAAAAAAAAAAAAANC1mYhIKwAAAAt4uR9GYXJ6YW5laF8yMDE1X0V4cGVyaSMyMDk2REEucGRmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIJba0P5/EgAAAAAAAAAAAAEAAwAACSAAAAAAAAAAAAAAAAAAAAAGcGFwZXJzABAACAAA0LW1qAAAABEACAAA0P6bMgAAAAEAEAALeLkAC3bdAAUzQAAAwAoAAgBVTWFpbiBQYXJ0aXRpb246VXNlcnM6AGZhYmlvZm9ydGthbXA6AERyb3Bib3g6AHBhcGVyczoARmFyemFuZWhfMjAxNV9FeHBlcmkjMjA5NkRBLnBkZgAADgCEAEEARgBhAHIAegBhAG4AZQBoAF8AMgAwADEANQBfAEUAeABwAGUAcgBpAG0AZQBuAHQAYQBsACAAaQBuAHYAZQBzAHQAaQBnAGEAdABpAG8AbgAgAG8AZgAgAEMATwAyAC0AZgBvAGEAbQAgAHMAXwAwADAAMAAwADAAMAAuAHAAZABmAA8AHgAOAE0AYQBpAG4AIABQAGEAcgB0AGkAdABpAG8AbgASAGRVc2Vycy9mYWJpb2ZvcnRrYW1wL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRmABMAAS8AABUAAgAU//8AAIAG0hscHR5aJGNsYXNzbmFtZVgkY2xhc3Nlc11OU011dGFibGVEYXRhox0fIFZOU0RhdGFYTlNPYmplY3TSGxwiI1xOU0RpY3Rpb25hcnmiIiBfEA9OU0tleWVkQXJjaGl2ZXLRJidUcm9vdIABAAgAEQAaACMALQAyADcAQABGAE0AVQBgAGcAagBsAG4AcQBzAHUAdwCEAI4A5ADpAPEDPQM/A0QDTwNYA2YDagNxA3oDfwOMA48DoQOkA6kAAAAAAAACAQAAAAAAAAAoAAAAAAAAAAAAAAAAAAADqw==}}
А вот как JabRef сохраняет его (я не редактировал его, просто открыл и сохранил файл). Обратите внимание, что содержимое не изменилось, но заглавные буквы, пробелы и порядок ввода были такими:
@Article{bib:farzaneh,
title = {Experimental investigation of CO2-foam stability improvement by alkaline in the presence of crude oil},
author = {Seyed Amir Farzaneh and Mehran Sohrabi},
journal = {Chemical Engineering Research and Design},
year = {2015},
pages = {375-389},
volume = {94},
bdsk-file-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QUy4uL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRm0hcLGBlXTlMuZGF0YU8RAkgAAAAAAkgAAgAADk1haW4gUGFydGl0aW9uAAAAAAAAAAAAAAAAANC1mYhIKwAAAAt4uR9GYXJ6YW5laF8yMDE1X0V4cGVyaSMyMDk2REEucGRmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIJba0P5/EgAAAAAAAAAAAAEAAwAACSAAAAAAAAAAAAAAAAAAAAAGcGFwZXJzABAACAAA0LW1qAAAABEACAAA0P6bMgAAAAEAEAALeLkAC3bdAAUzQAAAwAoAAgBVTWFpbiBQYXJ0aXRpb246VXNlcnM6AGZhYmlvZm9ydGthbXA6AERyb3Bib3g6AHBhcGVyczoARmFyemFuZWhfMjAxNV9FeHBlcmkjMjA5NkRBLnBkZgAADgCEAEEARgBhAHIAegBhAG4AZQBoAF8AMgAwADEANQBfAEUAeABwAGUAcgBpAG0AZQBuAHQAYQBsACAAaQBuAHYAZQBzAHQAaQBnAGEAdABpAG8AbgAgAG8AZgAgAEMATwAyAC0AZgBvAGEAbQAgAHMAXwAwADAAMAAwADAAMAAuAHAAZABmAA8AHgAOAE0AYQBpAG4AIABQAGEAcgB0AGkAdABpAG8AbgASAGRVc2Vycy9mYWJpb2ZvcnRrYW1wL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRmABMAAS8AABUAAgAU//8AAIAG0hscHR5aJGNsYXNzbmFtZVgkY2xhc3Nlc11OU011dGFibGVEYXRhox0fIFZOU0RhdGFYTlNPYmplY3TSGxwiI1xOU0RpY3Rpb25hcnmiIiBfEA9OU0tleWVkQXJjaGl2ZXLRJidUcm9vdIABAAgAEQAaACMALQAyADcAQABGAE0AVQBgAGcAagBsAG4AcQBzAHUAdwCEAI4A5ADpAPEDPQM/A0QDTwNYA2YDagNxA3oDfwOMA48DoQOkA6kAAAAAAAACAQAAAAAAAAAoAAAAAAAAAAAAAAAAAAADqw==},
date-added = {2015-02-09 19:04:24 +0000},
date-modified = {2015-02-09 19:06:24 +0000},
keywords = {CO2 foam, heavy oil recovery, foam flood, foam stability, alkaline, surfactant screening}
}
Есть ли способ изменить (в любой из программ) способ сохранения записи, чтобы они были единообразными?
решение1
Решением вашей проблемы было бы добавление скрипта в ваш рабочий процесс git, который переформатирует ваш .bib-файл. Один из таких инструментов находится biber
в toolmode.
Звонок:
$ biber --tool example.bib
в результате получается хорошо отформатированный файл с именем example_bibertool.bib
:
@ARTICLE{bib:farzaneh,
AUTHOR = {Seyed Amir Farzaneh and Mehran Sohrabi},
BDSK-FILE-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QUy4uL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRm0hcLGBlXTlMuZGF0YU8RAkgAAAAAAkgAAgAADk1haW4gUGFydGl0aW9uAAAAAAAAAAAAAAAAANC1mYhIKwAAAAt4uR9GYXJ6YW5laF8yMDE1X0V4cGVyaSMyMDk2REEucGRmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIJba0P5/EgAAAAAAAAAAAAEAAwAACSAAAAAAAAAAAAAAAAAAAAAGcGFwZXJzABAACAAA0LW1qAAAABEACAAA0P6bMgAAAAEAEAALeLkAC3bdAAUzQAAAwAoAAgBVTWFpbiBQYXJ0aXRpb246VXNlcnM6AGZhYmlvZm9ydGthbXA6AERyb3Bib3g6AHBhcGVyczoARmFyemFuZWhfMjAxNV9FeHBlcmkjMjA5NkRBLnBkZgAADgCEAEEARgBhAHIAegBhAG4AZQBoAF8AMgAwADEANQBfAEUAeABwAGUAcgBpAG0AZQBuAHQAYQBsACAAaQBuAHYAZQBzAHQAaQBnAGEAdABpAG8AbgAgAG8AZgAgAEMATwAyAC0AZgBvAGEAbQAgAHMAXwAwADAAMAAwADAAMAAuAHAAZABmAA8AHgAOAE0AYQBpAG4AIABQAGEAcgB0AGkAdABpAG8AbgASAGRVc2Vycy9mYWJpb2ZvcnRrYW1wL0Ryb3Bib3gvcGFwZXJzL0ZhcnphbmVoXzIwMTVfRXhwZXJpbWVudGFsIGludmVzdGlnYXRpb24gb2YgQ08yLWZvYW0gc18wMDAwMDAucGRmABMAAS8AABUAAgAU//8AAIAG0hscHR5aJGNsYXNzbmFtZVgkY2xhc3Nlc11OU011dGFibGVEYXRhox0fIFZOU0RhdGFYTlNPYmplY3TSGxwiI1xOU0RpY3Rpb25hcnmiIiBfEA9OU0tleWVkQXJjaGl2ZXLRJidUcm9vdIABAAgAEQAaACMALQAyADcAQABGAE0AVQBgAGcAagBsAG4AcQBzAHUAdwCEAI4A5ADpAPEDPQM/A0QDTwNYA2YDagNxA3oDfwOMA48DoQOkA6kAAAAAAAACAQAAAAAAAAAoAAAAAAAAAAAAAAAAAAADqw==},
DATE-ADDED = {2015-02-09 19:04:24 +0000},
DATE-MODIFIED = {2015-02-09 19:06:24 +0000},
JOURNALTITLE = {Chemical Engineering Research and Design},
KEYWORDS = {CO2 foam, heavy oil recovery, foam flood, foam stability, alkaline, surfactant screening},
PAGES = {375-389},
TITLE = {Experimental investigation of CO2-foam stability improvement by alkaline in the presence of crude oil},
VOLUME = {94},
YEAR = {2015},
}
Теперь вы можете переименовать его и закоммитить.
Также: biber
может делать гораздо больше (сортировка, конвертация, перекодирование), просто взгляните на раздел 3.12 вруководство.