pyeasyphd 0.3.3__tar.gz → 0.3.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pyeasyphd might be problematic. Click here for more details.
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/PKG-INFO +1 -1
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/main/__init__.py +0 -6
- pyeasyphd-0.3.4/pyeasyphd/scripts/__init__.py +12 -0
- pyeasyphd-0.3.4/pyeasyphd/scripts/run_search_keywords.py +159 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyproject.toml +1 -1
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/LICENSE +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/README.md +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/.python-version +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/Main.sublime-menu +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/__init__.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/CSL/apa-no-ampersand.csl +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/CSL/apa.csl +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/CSL/ieee.csl +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Article.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Article_Header.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Article_Tail.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Beamer_Header.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Beamer_Tail.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/Style.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/TEVC_Header.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/TEVC_Tail.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/eisvogel.beamer +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/eisvogel.latex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/eisvogel.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/math.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/math_commands.tex +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/data/Templates/TEX/nextaimathmacros.sty +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/main/basic_input.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/main/pandoc_md_to.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/main/python_run_md.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/main/python_run_tex.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/pyeasyphd.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/pyeasyphd.sublime-settings +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/pyeasyphd.sublime-syntax +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/scripts/run_article_md.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/scripts/run_article_tex.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/scripts/run_beamer_tex.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/__init__.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/generate/generate_from_bibs.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/generate/generate_html.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/generate/generate_library.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/generate/generate_links.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/py_run_bib_md_tex.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/data.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/search_base.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/search_core.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/search_keywords.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/search_writers.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/tools/search/utils.py +0 -0
- {pyeasyphd-0.3.3 → pyeasyphd-0.3.4}/pyeasyphd/utils/utils.py +0 -0
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
"""Main module for PyEasyPhD core functionality.
|
|
2
|
-
|
|
3
|
-
This module contains the core classes for processing academic papers,
|
|
4
|
-
managing bibliographies, and converting between different formats.
|
|
5
|
-
"""
|
|
6
|
-
|
|
7
1
|
__all__ = ["BasicInput", "PandocMdTo", "PythonRunMd", "PythonRunTex"]
|
|
8
2
|
|
|
9
3
|
from .basic_input import BasicInput
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
__all__ = [
|
|
2
|
+
"run_article_md_daily_notes",
|
|
3
|
+
"run_article_tex_submit",
|
|
4
|
+
"run_beamer_tex_weekly_reports",
|
|
5
|
+
"run_search_for_files",
|
|
6
|
+
"run_search_for_screen",
|
|
7
|
+
]
|
|
8
|
+
|
|
9
|
+
from .run_article_md import run_article_md_daily_notes
|
|
10
|
+
from .run_article_tex import run_article_tex_submit
|
|
11
|
+
from .run_beamer_tex import run_beamer_tex_weekly_reports
|
|
12
|
+
from .run_search_keywords import run_search_for_files, run_search_for_screen
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from typing import Any, Dict, List
|
|
3
|
+
|
|
4
|
+
from pyeasyphd.tools import Searchkeywords
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def run_search_for_screen(
|
|
8
|
+
acronym: str,
|
|
9
|
+
year: int,
|
|
10
|
+
title: str,
|
|
11
|
+
path_spidered_bibs: str,
|
|
12
|
+
path_spidering_bibs: str,
|
|
13
|
+
path_conferences_journals_json: str,
|
|
14
|
+
) -> None:
|
|
15
|
+
"""
|
|
16
|
+
Run search for screen display with specific conference/journal parameters.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
acronym: Conference/journal acronym to search for
|
|
20
|
+
year: Publication year to filter by
|
|
21
|
+
title: Paper title used as search keyword
|
|
22
|
+
path_spidered_bibs: Path to spidered bibliography files
|
|
23
|
+
path_spidering_bibs: Path to spidering bibliography files
|
|
24
|
+
path_conferences_journals_json: Path to conferences/journals JSON files
|
|
25
|
+
"""
|
|
26
|
+
# Expand and normalize file paths
|
|
27
|
+
path_spidered_bibs = _expand_path(path_spidered_bibs)
|
|
28
|
+
path_spidering_bibs = _expand_path(path_spidering_bibs)
|
|
29
|
+
path_conferences_journals_json = _expand_path(path_conferences_journals_json)
|
|
30
|
+
|
|
31
|
+
# Configure search options
|
|
32
|
+
options = _build_search_options(
|
|
33
|
+
print_on_screen=True,
|
|
34
|
+
search_year_list=[str(year)],
|
|
35
|
+
include_publisher_list=[],
|
|
36
|
+
include_abbr_list=[acronym],
|
|
37
|
+
exclude_publisher_list=["arXiv"],
|
|
38
|
+
exclude_abbr_list=[],
|
|
39
|
+
keywords_type="Temp",
|
|
40
|
+
keywords_list_list=[[title]],
|
|
41
|
+
path_conferences_journals_json=path_conferences_journals_json,
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
# Execute searches across different bibliography sources
|
|
45
|
+
_execute_searches(options, "", path_spidered_bibs, path_spidering_bibs)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def run_search_for_files(
|
|
49
|
+
keywords_type: str,
|
|
50
|
+
keywords_list_list: List[List[str]],
|
|
51
|
+
path_main_output: str,
|
|
52
|
+
path_spidered_bibs: str,
|
|
53
|
+
path_spidering_bibs: str,
|
|
54
|
+
path_conferences_journals_json: str,
|
|
55
|
+
) -> None:
|
|
56
|
+
"""
|
|
57
|
+
Run search and save results to files with custom keywords.
|
|
58
|
+
|
|
59
|
+
Args:
|
|
60
|
+
keywords_type: Category name for the search keywords
|
|
61
|
+
keywords_list_list: Nested list of keywords to search for
|
|
62
|
+
path_main_output: Main output directory for search results
|
|
63
|
+
path_spidered_bibs: Path to spidered bibliography files
|
|
64
|
+
path_spidering_bibs: Path to spidering bibliography files
|
|
65
|
+
path_conferences_journals_json: Path to conferences/journals JSON files
|
|
66
|
+
"""
|
|
67
|
+
# Expand and normalize file paths
|
|
68
|
+
path_main_output = _expand_path(path_main_output)
|
|
69
|
+
path_spidered_bibs = _expand_path(path_spidered_bibs)
|
|
70
|
+
path_spidering_bibs = _expand_path(path_spidering_bibs)
|
|
71
|
+
path_conferences_journals_json = _expand_path(path_conferences_journals_json)
|
|
72
|
+
|
|
73
|
+
# Configure search options
|
|
74
|
+
options = _build_search_options(
|
|
75
|
+
print_on_screen=False,
|
|
76
|
+
search_year_list=[],
|
|
77
|
+
include_publisher_list=[],
|
|
78
|
+
include_abbr_list=[],
|
|
79
|
+
exclude_publisher_list=["arXiv"],
|
|
80
|
+
exclude_abbr_list=[],
|
|
81
|
+
keywords_type=keywords_type,
|
|
82
|
+
keywords_list_list=keywords_list_list,
|
|
83
|
+
path_conferences_journals_json=path_conferences_journals_json,
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
# Execute searches across different bibliography sources
|
|
87
|
+
_execute_searches(options, path_main_output, path_spidered_bibs, path_spidering_bibs)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def _expand_path(path: str) -> str:
|
|
91
|
+
"""Expand user home directory and environment variables in path."""
|
|
92
|
+
return os.path.expandvars(os.path.expanduser(path))
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def _build_search_options(
|
|
96
|
+
print_on_screen: bool,
|
|
97
|
+
search_year_list: List[str],
|
|
98
|
+
include_publisher_list: List[str],
|
|
99
|
+
include_abbr_list: List[str],
|
|
100
|
+
exclude_publisher_list: List[str],
|
|
101
|
+
exclude_abbr_list: List[str],
|
|
102
|
+
keywords_type: str,
|
|
103
|
+
keywords_list_list: List[List[str]],
|
|
104
|
+
path_conferences_journals_json: str,
|
|
105
|
+
) -> Dict[str, Any]:
|
|
106
|
+
"""
|
|
107
|
+
Build search options dictionary with common configuration.
|
|
108
|
+
|
|
109
|
+
Args:
|
|
110
|
+
print_on_screen: Whether to display results on screen
|
|
111
|
+
search_year_list: List of years to filter search results
|
|
112
|
+
include_publisher_list: List of publishers to include
|
|
113
|
+
include_abbr_list: List of conference/journal abbreviations to include
|
|
114
|
+
exclude_publisher_list: List of publishers to exclude from search
|
|
115
|
+
exclude_abbr_list: List of conference/journal abbreviations to exclude from search
|
|
116
|
+
keywords_type: Category name for search keywords
|
|
117
|
+
keywords_list_list: Nested list of search keywords
|
|
118
|
+
path_conferences_journals_json: Base path for conferences/journals JSON files
|
|
119
|
+
|
|
120
|
+
Returns:
|
|
121
|
+
Dictionary containing configured search options
|
|
122
|
+
"""
|
|
123
|
+
return {
|
|
124
|
+
"print_on_screen": print_on_screen,
|
|
125
|
+
"search_year_list": search_year_list,
|
|
126
|
+
"include_publisher_list": include_publisher_list,
|
|
127
|
+
"include_abbr_list": include_abbr_list,
|
|
128
|
+
"exclude_publisher_list": exclude_publisher_list,
|
|
129
|
+
"exclude_abbr_list": exclude_abbr_list,
|
|
130
|
+
"keywords_dict": {keywords_type: keywords_list_list},
|
|
131
|
+
"keywords_type_list": [keywords_type],
|
|
132
|
+
"full_json_c": os.path.join(path_conferences_journals_json, "conferences.json"),
|
|
133
|
+
"full_json_j": os.path.join(path_conferences_journals_json, "journals.json"),
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
def _execute_searches(
|
|
138
|
+
options: Dict[str, Any], path_main_output: str, path_spidered_bibs: str, path_spidering_bibs: str
|
|
139
|
+
) -> None:
|
|
140
|
+
"""
|
|
141
|
+
Execute searches across different bibliography sources.
|
|
142
|
+
|
|
143
|
+
Args:
|
|
144
|
+
options: Search configuration options
|
|
145
|
+
path_main_output: Base path for search results output
|
|
146
|
+
path_spidered_bibs: Path to spidered bibliography files
|
|
147
|
+
path_spidering_bibs: Path to spidering bibliography files
|
|
148
|
+
"""
|
|
149
|
+
# Search in spidered bibliographies (Conferences and Journals)
|
|
150
|
+
for cj in ["Conferences", "Journals"]:
|
|
151
|
+
path_storage = os.path.join(path_spidered_bibs, cj)
|
|
152
|
+
path_output = os.path.join(path_main_output, "Search_spidered_bib", cj)
|
|
153
|
+
Searchkeywords(path_storage, path_output, options).run()
|
|
154
|
+
|
|
155
|
+
# Search in spidering bibliographies (Journals and Journals Early Access)
|
|
156
|
+
for je in ["spider_j", "spider_j_e"]:
|
|
157
|
+
path_storage = os.path.join(path_spidering_bibs, je)
|
|
158
|
+
path_output = os.path.join(path_main_output, "Search_spidering_bib", je)
|
|
159
|
+
Searchkeywords(path_storage, path_output, options).run()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|