Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Auto-create groups from AUX file #1664

Closed
stefan-kolb opened this issue Aug 2, 2016 · 6 comments
Closed

Auto-create groups from AUX file #1664

stefan-kolb opened this issue Aug 2, 2016 · 6 comments
Assignees

Comments

@stefan-kolb
Copy link
Member

Create groups of papers cited in a paper via an aux-file

@Mixopteryx
Copy link

The same as "Tools --> New Subdatabase based on AUX file", but output a group instead of a new .bib file.

@tobiasdiez
Copy link
Member

@stefan-kolb @Mixopteryx @oscargus @koppor do you guys actually prefer the aux file? I would like to work on this but my approach would be to directly parse the tex-file and look for \cite commands and its relatives. Reason: the tex file is always up-to-date while I need to recompile to get a correct aux file (also the location of the aux file may change when compiled with the -output-directory option or be deleted by a "cleanup of temporary files" action of a text editor).

@stefan-kolb
Copy link
Member Author

Just a few quik thoughts:

  1. The aux file is smaller and already has the necessary cites aggregated
  2. You need to search all folders for multiple tex files
  3. Tex files might not be included in the main document that is actually compiled
  4. Cites might be commented out or something in the code

@koppor
Copy link
Member

koppor commented Nov 7, 2017 via email

@Mixopteryx
Copy link

In principle using the .tex file would be better, but using the .aux file is much more robust and simpler to make.

I'd rather use the aux file and recompile than ensuring that my tex file is supported by a parser. In addition to what @stefan-kolb mention I sometimes define \newcommands that include \cite commands, and a I expect a parser that would catch that need to be awfully complicated compared to the aux parser.

tobiasdiez added a commit that referenced this issue Jan 28, 2018
* First prototype of aux group

* Refactor so that TexGroup does not depend on logic

* Add changelog entry

* Fix architecture tests

* Add new language key

* Fix tests
@tobiasdiez
Copy link
Member

This is now implemented in the latest development version. Could you please check the build from http://builds.jabref.org/master/. Thanks!
The user interface is a bit spartanic (since we plan to rewrite the groups dialog) but it should work if you paste the full path to the aux-file in the textbox.

Siedlerchr added a commit that referenced this issue Feb 6, 2018
* upstream/master: (155 commits)
  Update DEVELOPERS
  Update README.md
  [WIP] File link deletion dialog improvements (#3690)
  Update guava (#3692)
  Fix some FX  Thread issue (#3691)
  Fixed typo, mayor to major (#3685)
  add Office xml test for latex free fields (#3680)
  Migrate importer tests to JUnit5 (#3665)
  fix typo
  Update slf4j-api from 1.8.0-beta0 -> 1.8.0-beta1
  Update richtext from 0.8.1 -> 0.8.2
  Update junit from 5.1.0-M1 -> 5.1.0-M2
  Update checkstyle from 8.7 -> 8.8
  Export all fields with their latex free equivalent (#3675)
  try around with exckluding tag (#3676)
  Fixes #3648: Chained modifiers work again (#3670)
  Update gradle from 4.4.1 to 4.5 and tweak .gitattributes
  Fix 2633 saving creates new database (#3674)
  New translations JabRef_en.properties (French)
  Implements #1664: group based on aux file (#3444)
  ...

# Conflicts:
#	CHANGELOG.md
#	CONTRIBUTING.md
#	build.gradle
#	gradle/wrapper/gradle-wrapper.jar
#	gradle/wrapper/gradle-wrapper.properties
#	scripts/syncLang.py
#	src/main/java/org/jabref/FallbackExceptionHandler.java
#	src/main/java/org/jabref/Globals.java
#	src/main/java/org/jabref/JabRefMain.java
#	src/main/java/org/jabref/cli/ArgumentProcessor.java
#	src/main/java/org/jabref/cli/JabRefCLI.java
#	src/main/java/org/jabref/collab/EntryChange.java
#	src/main/java/org/jabref/collab/EntryDeleteChange.java
#	src/main/java/org/jabref/collab/FileUpdateListener.java
#	src/main/java/org/jabref/collab/StringAddChange.java
#	src/main/java/org/jabref/collab/StringChange.java
#	src/main/java/org/jabref/collab/StringNameChange.java
#	src/main/java/org/jabref/collab/StringRemoveChange.java
#	src/main/java/org/jabref/gui/BasePanel.java
#	src/main/java/org/jabref/gui/ClipBoardManager.java
#	src/main/java/org/jabref/gui/DefaultInjector.java
#	src/main/java/org/jabref/gui/DialogService.java
#	src/main/java/org/jabref/gui/EntryTypeDialog.java
#	src/main/java/org/jabref/gui/JabRefFrame.java
#	src/main/java/org/jabref/gui/actions/IntegrityCheckAction.java
#	src/main/java/org/jabref/gui/collab/ChangeScanner.java
#	src/main/java/org/jabref/gui/collab/DatabaseChangeMonitor.java
#	src/main/java/org/jabref/gui/copyfiles/CopyFilesTask.java
#	src/main/java/org/jabref/gui/customjfx/CustomJFXPanel.java
#	src/main/java/org/jabref/gui/desktop/JabRefDesktop.java
#	src/main/java/org/jabref/gui/entryeditor/DeprecatedFieldsTab.java
#	src/main/java/org/jabref/gui/entryeditor/EntryEditor.css
#	src/main/java/org/jabref/gui/entryeditor/EntryEditor.java
#	src/main/java/org/jabref/gui/entryeditor/FieldsEditorTab.java
#	src/main/java/org/jabref/gui/entryeditor/OptionalFields2Tab.java
#	src/main/java/org/jabref/gui/entryeditor/OptionalFieldsTab.java
#	src/main/java/org/jabref/gui/entryeditor/OtherFieldsTab.java
#	src/main/java/org/jabref/gui/entryeditor/RequiredFieldsTab.java
#	src/main/java/org/jabref/gui/entryeditor/SourceTab.java
#	src/main/java/org/jabref/gui/entryeditor/UserDefinedFieldsTab.java
#	src/main/java/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTabController.java
#	src/main/java/org/jabref/gui/entryeditor/fileannotationtab/FileAnnotationTabViewModel.java
#	src/main/java/org/jabref/gui/exporter/ExportAction.java
#	src/main/java/org/jabref/gui/exporter/ExportFileFilter.java
#	src/main/java/org/jabref/gui/externalfiles/AutoSetFileLinksUtil.java
#	src/main/java/org/jabref/gui/externalfiles/AutoSetLinks.java
#	src/main/java/org/jabref/gui/fieldeditors/EditorValidator.java
#	src/main/java/org/jabref/gui/fieldeditors/FieldEditors.java
#	src/main/java/org/jabref/gui/fieldeditors/FileListEditorTransferHandler.java
#	src/main/java/org/jabref/gui/fieldeditors/LinkedFileViewModel.java
#	src/main/java/org/jabref/gui/fieldeditors/LinkedFilesEditor.java
#	src/main/java/org/jabref/gui/fieldeditors/LinkedFilesEditorViewModel.java
#	src/main/java/org/jabref/gui/fieldeditors/MapBasedEditorViewModel.java
#	src/main/java/org/jabref/gui/groups/GroupDialog.java
#	src/main/java/org/jabref/gui/groups/GroupSidePane.java
#	src/main/java/org/jabref/gui/groups/GroupTreeController.java
#	src/main/java/org/jabref/gui/help/AboutDialogViewModel.java
#	src/main/java/org/jabref/gui/help/HelpAction.java
#	src/main/java/org/jabref/gui/importer/ImportFileFilter.java
#	src/main/java/org/jabref/gui/importer/ImportFormats.java
#	src/main/java/org/jabref/gui/maintable/MainTableSelectionListener.java
#	src/main/java/org/jabref/gui/preftabs/AppearancePrefsTab.java
#	src/main/java/org/jabref/gui/preftabs/EntryEditorPrefsTab.java
#	src/main/java/org/jabref/gui/preftabs/PreviewPrefsTab.java
#	src/main/java/org/jabref/gui/search/GlobalSearchBar.java
#	src/main/java/org/jabref/gui/util/BindingsHelper.java
#	src/main/java/org/jabref/gui/util/DefaultFileUpdateMonitor.java
#	src/main/java/org/jabref/gui/util/DefaultTaskExecutor.java
#	src/main/java/org/jabref/gui/util/FileUpdateListener.java
#	src/main/java/org/jabref/gui/worker/CitationStyleToClipboardWorker.java
#	src/main/java/org/jabref/logic/bibtexkeypattern/BibtexKeyGenerator.java
#	src/main/java/org/jabref/logic/bibtexkeypattern/BracketedPattern.java
#	src/main/java/org/jabref/logic/citationstyle/CitationStyle.java
#	src/main/java/org/jabref/logic/citationstyle/CitationStyleCache.java
#	src/main/java/org/jabref/logic/citationstyle/CitationStyleGenerator.java
#	src/main/java/org/jabref/logic/exporter/BibTeXMLExporter.java
#	src/main/java/org/jabref/logic/exporter/ExportFormats.java
#	src/main/java/org/jabref/logic/exporter/IExportFormat.java
#	src/main/java/org/jabref/logic/exporter/MSBibExporter.java
#	src/main/java/org/jabref/logic/exporter/ModsExporter.java
#	src/main/java/org/jabref/logic/exporter/OpenDocumentSpreadsheetCreator.java
#	src/main/java/org/jabref/logic/exporter/OpenOfficeDocumentCreator.java
#	src/main/java/org/jabref/logic/exporter/TemplateExporter.java
#	src/main/java/org/jabref/logic/importer/ImportFormatReader.java
#	src/main/java/org/jabref/logic/importer/WebFetchers.java
#	src/main/java/org/jabref/logic/importer/fetcher/IacrEprintFetcher.java
#	src/main/java/org/jabref/logic/integrity/FieldCheckers.java
#	src/main/java/org/jabref/logic/integrity/IntegrityCheck.java
#	src/main/java/org/jabref/logic/journals/JournalAbbreviationRepository.java
#	src/main/java/org/jabref/logic/shared/DBMSProcessor.java
#	src/main/java/org/jabref/logic/shared/DBMSSynchronizer.java
#	src/main/java/org/jabref/logic/util/FileType.java
#	src/main/java/org/jabref/logic/util/JavaVersion.java
#	src/main/java/org/jabref/logic/util/io/CiteKeyBasedFileFinder.java
#	src/main/java/org/jabref/logic/util/io/FileFinder.java
#	src/main/java/org/jabref/logic/util/io/FileUtil.java
#	src/main/java/org/jabref/logic/util/io/RegExpBasedFileFinder.java
#	src/main/java/org/jabref/model/auxparser/AuxParserResult.java
#	src/main/java/org/jabref/model/database/BibDatabaseContext.java
#	src/main/java/org/jabref/model/entry/FieldProperty.java
#	src/main/java/org/jabref/model/pdf/FileAnnotation.java
#	src/main/java/org/jabref/model/util/FileUpdateListener.java
#	src/main/java/org/jabref/preferences/CustomExportList.java
#	src/main/java/org/jabref/preferences/JabRefPreferences.java
#	src/test/java/org/jabref/TestArchitectureTests.java
#	src/test/java/org/jabref/gui/externalfiles/AutoSetFileLinksUtilTest.java
#	src/test/java/org/jabref/gui/importer/EntryFromFileCreatorManagerTest.java
#	src/test/java/org/jabref/logic/bibtexkeypattern/BibtexKeyGeneratorTest.java
#	src/test/java/org/jabref/logic/bibtexkeypattern/MakeLabelWithDatabaseTest.java
#	src/test/java/org/jabref/logic/exporter/MsBibExportFormatTest.java
#	src/test/java/org/jabref/logic/importer/ImportFormatReaderTestParameterless.java
#	src/test/java/org/jabref/logic/importer/fetcher/ArXivTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/AstrophysicsDataSystemTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/CrossRefTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/DBLPFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/DiVATest.java
#	src/test/java/org/jabref/logic/importer/fetcher/DoiFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/FulltextFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/GvkFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/IacrEprintFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/IsbnFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/IsbnViaChimboriFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/IsbnViaEbookDeFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/LibraryOfCongressTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/MedlineFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/MrDLibFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/SpringerLinkTest.java
#	src/test/java/org/jabref/logic/importer/fetcher/TitleFetcherTest.java
#	src/test/java/org/jabref/logic/importer/fileformat/BibtexParserTest.java
#	src/test/java/org/jabref/logic/importer/fileformat/FreeCiteImporterTest.java
#	src/test/java/org/jabref/logic/l10n/LocalizationConsistencyTest.java
#	src/test/java/org/jabref/logic/shared/DBMSConnectionTest.java
#	src/test/java/org/jabref/logic/shared/DBMSProcessorTest.java
#	src/test/java/org/jabref/logic/shared/DBMSSynchronizerTest.java
#	src/test/java/org/jabref/logic/shared/DBMSTypeTest.java
#	src/test/java/org/jabref/logic/shared/SynchronizationTestEventListener.java
#	src/test/java/org/jabref/logic/shared/SynchronizationTestSimulator.java
#	src/test/java/org/jabref/logic/shared/TestConnector.java
#	src/test/java/org/jabref/logic/util/BracketedPatternTest.java
#	src/test/java/org/jabref/logic/util/io/CiteKeyBasedFileFinderTest.java
#	src/test/java/org/jabref/logic/util/io/RegExpBasedFileFinderTests.java
#	src/test/java/org/jabref/testutils/category/FetcherTest.java
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants