File tree Expand file tree Collapse file tree 1 file changed +25
-3
lines changed
Expand file tree Collapse file tree 1 file changed +25
-3
lines changed Original file line number Diff line number Diff line change 11"""
22Merges static bibs and dynamic bibs
3+ Removes delete bibs and overrides override bibs
34Reason: we'll only update dynamic bibs automatically
45"""
56
1112ROOT = Path (__file__ ).resolve ().parents [1 ]
1213STATIC = ROOT / "_data/pub/static.bib"
1314DYNAMIC = ROOT / "_data/pub/dynamic.bib"
15+ OVERRIDE = ROOT / "_data/pub/override.bib"
16+ DELETE = ROOT / "_data/pub/delete.bib"
1417OUT = ROOT / "publications.bib"
1518
1619def load (path : Path ):
@@ -23,12 +26,31 @@ def load(path: Path):
2326def main ():
2427 static_entries = load (STATIC )
2528 dynamic_entries = load (DYNAMIC )
29+ delete_entries = load (DELETE )
30+ override_entries = load (OVERRIDE )
31+
32+ # List to delete
33+ list_delete = [e .get ("ID" ) for e in delete_entries ]
34+
35+ # Dictionary for replacements
36+ dict_override = {}
37+ for e in override_entries :
38+ dict_override [e ["ID" ]] = e
2639
2740 merged = {}
28- for e in static_entries :
29- if "ID" in e :
30- merged [e ["ID" ]] = e
3141 for e in dynamic_entries :
42+ if "ID" in e :
43+ unique_id = e ["ID" ]
44+
45+ if unique_id in list_delete : # Delete based on user command
46+ continue
47+
48+ try : # Override information
49+ merged [unique_id ] = dict_override [unique_id ]
50+ except :
51+ merged [unique_id ] = e
52+
53+ for e in static_entries :
3254 if "ID" in e :
3355 merged [e ["ID" ]] = e
3456
You can’t perform that action at this time.
0 commit comments