gitlatex 1.0.0__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.
- gitlatex-1.0.0/PKG-INFO +151 -0
- gitlatex-1.0.0/README.md +124 -0
- gitlatex-1.0.0/gitlatex/__init__.py +2 -0
- gitlatex-1.0.0/gitlatex/__main__.py +5 -0
- gitlatex-1.0.0/gitlatex/public/app.js +1688 -0
- gitlatex-1.0.0/gitlatex/public/bib-commands.json +45 -0
- gitlatex-1.0.0/gitlatex/public/favicon.svg +55 -0
- gitlatex-1.0.0/gitlatex/public/index.html +239 -0
- gitlatex-1.0.0/gitlatex/public/latex-commands.json +212 -0
- gitlatex-1.0.0/gitlatex/public/style.css +1388 -0
- gitlatex-1.0.0/gitlatex/server.py +856 -0
- gitlatex-1.0.0/gitlatex.egg-info/PKG-INFO +151 -0
- gitlatex-1.0.0/gitlatex.egg-info/SOURCES.txt +17 -0
- gitlatex-1.0.0/gitlatex.egg-info/dependency_links.txt +1 -0
- gitlatex-1.0.0/gitlatex.egg-info/entry_points.txt +2 -0
- gitlatex-1.0.0/gitlatex.egg-info/requires.txt +6 -0
- gitlatex-1.0.0/gitlatex.egg-info/top_level.txt +1 -0
- gitlatex-1.0.0/pyproject.toml +46 -0
- gitlatex-1.0.0/setup.cfg +4 -0
gitlatex-1.0.0/PKG-INFO
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: gitlatex
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: A simple UI for LaTeX projects with Git support. Clone repos, edit, compile, and push.
|
|
5
|
+
License-Expression: ISC
|
|
6
|
+
Project-URL: Homepage, https://github.com/yourusername/gitlatex
|
|
7
|
+
Project-URL: Documentation, https://github.com/yourusername/gitlatex#readme
|
|
8
|
+
Project-URL: Repository, https://github.com/yourusername/gitlatex
|
|
9
|
+
Keywords: latex,git,ide,editor
|
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
|
11
|
+
Classifier: Environment :: Web Environment
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Topic :: Text Processing :: Markup :: LaTeX
|
|
20
|
+
Requires-Python: >=3.8
|
|
21
|
+
Description-Content-Type: text/markdown
|
|
22
|
+
Requires-Dist: flask>=2.0
|
|
23
|
+
Requires-Dist: gitpython>=3.1
|
|
24
|
+
Provides-Extra: dev
|
|
25
|
+
Requires-Dist: build; extra == "dev"
|
|
26
|
+
Requires-Dist: twine; extra == "dev"
|
|
27
|
+
|
|
28
|
+
# GitLaTeX IDE
|
|
29
|
+
|
|
30
|
+
A simple web-based IDE for LaTeX projects with Git support. Create workspaces, clone repos, edit in a Monaco-powered editor, compile to PDF, and push changes—without Overleaf or the command line.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Installation
|
|
35
|
+
|
|
36
|
+
Install from PyPI:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
pip install gitlatex
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Requirements:** Python 3.8+, and (for full use) Git and a LaTeX distribution with `pdflatex` (e.g. [TeX Live](https://www.tug.org/texlive/), [MiKTeX](https://miktex.org/)).
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Quick start
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
gitlatex
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Your browser will open at **http://localhost:5000**. Create a workspace or clone a repo, then open it to edit, compile, and use Git (status, diff, commit, push) from the toolbar.
|
|
53
|
+
|
|
54
|
+
**Options:**
|
|
55
|
+
|
|
56
|
+
| Option | Description |
|
|
57
|
+
|--------|-------------|
|
|
58
|
+
| `--port`, `-p` | Port (default: 5000) |
|
|
59
|
+
| `--host` | Bind host (default: 127.0.0.1) |
|
|
60
|
+
| `--no-browser` | Do not open the browser on start |
|
|
61
|
+
| `--repos` | Directory for workspaces (default: `./repos` in current working directory) |
|
|
62
|
+
|
|
63
|
+
Example: `gitlatex --port 3000 --repos /path/to/my/repos`
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Features
|
|
68
|
+
|
|
69
|
+
- **Workspaces** – Create local folders or clone from a Git URL (e.g. GitHub).
|
|
70
|
+
- **File tree** – Create, rename, move, delete, and upload files and folders.
|
|
71
|
+
- **Editor** – Monaco editor, multiple tabs, resizable panels.
|
|
72
|
+
- **Compile** – Build with `pdflatex`, view PDF in-app, see errors in the console.
|
|
73
|
+
- **Git** – Status, diff, commit, and push from the **Git** dropdown in the toolbar.
|
|
74
|
+
- **Settings** – Light/dark theme.
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Workflow
|
|
79
|
+
|
|
80
|
+
1. Run `gitlatex` and open the app in your browser.
|
|
81
|
+
2. **Add a project** – Create a new workspace or clone from a Git URL.
|
|
82
|
+
3. **Open** – Click a repo to open the editor.
|
|
83
|
+
4. **Edit** – Use the file tree and editor; click **Compile** to build.
|
|
84
|
+
5. **Git** – Use the **Git** menu for Status, Diff, Commit, Push.
|
|
85
|
+
|
|
86
|
+
Projects are stored in the `repos` directory (or the path you set with `--repos`).
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## Troubleshooting
|
|
91
|
+
|
|
92
|
+
- **Compile fails** – Install a LaTeX distribution and ensure `pdflatex` is on your PATH.
|
|
93
|
+
- **Port in use** – Use another port: `gitlatex --port 3000`.
|
|
94
|
+
- **Windows: "The process cannot access the file... gitlatex.exe"** – Another instance is running. Close it, then run `gitlatex` again.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Development
|
|
99
|
+
|
|
100
|
+
Run from source (no PyPI install): clone the repository, then from its root:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
pip install -e .
|
|
104
|
+
gitlatex
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Or run the package without installing:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
pip install flask gitpython
|
|
111
|
+
python -m gitlatex
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Publishing to PyPI
|
|
117
|
+
|
|
118
|
+
For maintainers publishing a new version:
|
|
119
|
+
|
|
120
|
+
1. **Bump version** in `pyproject.toml` and `gitlatex/__init__.py` (e.g. `1.0.1`).
|
|
121
|
+
|
|
122
|
+
2. **Install build tools:**
|
|
123
|
+
```bash
|
|
124
|
+
pip install build twine
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
3. **Build the package:**
|
|
128
|
+
```bash
|
|
129
|
+
python -m build
|
|
130
|
+
```
|
|
131
|
+
This creates `dist/gitlatex-1.0.0.tar.gz` (sdist) and `dist/gitlatex-1.0.0-py3-none-any.whl` (wheel).
|
|
132
|
+
|
|
133
|
+
4. **Upload to PyPI** (requires a [PyPI account](https://pypi.org/account/register/) and API token):
|
|
134
|
+
```bash
|
|
135
|
+
twine upload dist/*
|
|
136
|
+
```
|
|
137
|
+
Use `twine upload --repository testpypi dist/*` to upload to Test PyPI first.
|
|
138
|
+
|
|
139
|
+
5. **Set your token** (one-time): create `~/.pypirc` or use environment variables:
|
|
140
|
+
```ini
|
|
141
|
+
[pypi]
|
|
142
|
+
username = __token__
|
|
143
|
+
password = pypi-YourAPIToken
|
|
144
|
+
```
|
|
145
|
+
Or: `set TWINE_PASSWORD=pypi-YourAPIToken` (Windows) / `export TWINE_PASSWORD=...` (Unix) and `twine upload -u __token__ -p $TWINE_PASSWORD dist/*`.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## License
|
|
150
|
+
|
|
151
|
+
ISC
|
gitlatex-1.0.0/README.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# GitLaTeX IDE
|
|
2
|
+
|
|
3
|
+
A simple web-based IDE for LaTeX projects with Git support. Create workspaces, clone repos, edit in a Monaco-powered editor, compile to PDF, and push changes—without Overleaf or the command line.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
Install from PyPI:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
pip install gitlatex
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Requirements:** Python 3.8+, and (for full use) Git and a LaTeX distribution with `pdflatex` (e.g. [TeX Live](https://www.tug.org/texlive/), [MiKTeX](https://miktex.org/)).
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Quick start
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
gitlatex
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Your browser will open at **http://localhost:5000**. Create a workspace or clone a repo, then open it to edit, compile, and use Git (status, diff, commit, push) from the toolbar.
|
|
26
|
+
|
|
27
|
+
**Options:**
|
|
28
|
+
|
|
29
|
+
| Option | Description |
|
|
30
|
+
|--------|-------------|
|
|
31
|
+
| `--port`, `-p` | Port (default: 5000) |
|
|
32
|
+
| `--host` | Bind host (default: 127.0.0.1) |
|
|
33
|
+
| `--no-browser` | Do not open the browser on start |
|
|
34
|
+
| `--repos` | Directory for workspaces (default: `./repos` in current working directory) |
|
|
35
|
+
|
|
36
|
+
Example: `gitlatex --port 3000 --repos /path/to/my/repos`
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Features
|
|
41
|
+
|
|
42
|
+
- **Workspaces** – Create local folders or clone from a Git URL (e.g. GitHub).
|
|
43
|
+
- **File tree** – Create, rename, move, delete, and upload files and folders.
|
|
44
|
+
- **Editor** – Monaco editor, multiple tabs, resizable panels.
|
|
45
|
+
- **Compile** – Build with `pdflatex`, view PDF in-app, see errors in the console.
|
|
46
|
+
- **Git** – Status, diff, commit, and push from the **Git** dropdown in the toolbar.
|
|
47
|
+
- **Settings** – Light/dark theme.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Workflow
|
|
52
|
+
|
|
53
|
+
1. Run `gitlatex` and open the app in your browser.
|
|
54
|
+
2. **Add a project** – Create a new workspace or clone from a Git URL.
|
|
55
|
+
3. **Open** – Click a repo to open the editor.
|
|
56
|
+
4. **Edit** – Use the file tree and editor; click **Compile** to build.
|
|
57
|
+
5. **Git** – Use the **Git** menu for Status, Diff, Commit, Push.
|
|
58
|
+
|
|
59
|
+
Projects are stored in the `repos` directory (or the path you set with `--repos`).
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Troubleshooting
|
|
64
|
+
|
|
65
|
+
- **Compile fails** – Install a LaTeX distribution and ensure `pdflatex` is on your PATH.
|
|
66
|
+
- **Port in use** – Use another port: `gitlatex --port 3000`.
|
|
67
|
+
- **Windows: "The process cannot access the file... gitlatex.exe"** – Another instance is running. Close it, then run `gitlatex` again.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Development
|
|
72
|
+
|
|
73
|
+
Run from source (no PyPI install): clone the repository, then from its root:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
pip install -e .
|
|
77
|
+
gitlatex
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Or run the package without installing:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
pip install flask gitpython
|
|
84
|
+
python -m gitlatex
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Publishing to PyPI
|
|
90
|
+
|
|
91
|
+
For maintainers publishing a new version:
|
|
92
|
+
|
|
93
|
+
1. **Bump version** in `pyproject.toml` and `gitlatex/__init__.py` (e.g. `1.0.1`).
|
|
94
|
+
|
|
95
|
+
2. **Install build tools:**
|
|
96
|
+
```bash
|
|
97
|
+
pip install build twine
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
3. **Build the package:**
|
|
101
|
+
```bash
|
|
102
|
+
python -m build
|
|
103
|
+
```
|
|
104
|
+
This creates `dist/gitlatex-1.0.0.tar.gz` (sdist) and `dist/gitlatex-1.0.0-py3-none-any.whl` (wheel).
|
|
105
|
+
|
|
106
|
+
4. **Upload to PyPI** (requires a [PyPI account](https://pypi.org/account/register/) and API token):
|
|
107
|
+
```bash
|
|
108
|
+
twine upload dist/*
|
|
109
|
+
```
|
|
110
|
+
Use `twine upload --repository testpypi dist/*` to upload to Test PyPI first.
|
|
111
|
+
|
|
112
|
+
5. **Set your token** (one-time): create `~/.pypirc` or use environment variables:
|
|
113
|
+
```ini
|
|
114
|
+
[pypi]
|
|
115
|
+
username = __token__
|
|
116
|
+
password = pypi-YourAPIToken
|
|
117
|
+
```
|
|
118
|
+
Or: `set TWINE_PASSWORD=pypi-YourAPIToken` (Windows) / `export TWINE_PASSWORD=...` (Unix) and `twine upload -u __token__ -p $TWINE_PASSWORD dist/*`.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## License
|
|
123
|
+
|
|
124
|
+
ISC
|