Skip to content

Red-Rapious/Elements-LaTeX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Elements LaTeX

Elements LaTeX

A cross-platform, powerful electron-based LaTeX editor.
Stable release v0.0.3 now available for macOS.

release badge license

repo size badge line count badge commit activity

Preview

This is the current interface of Elements LaTeX: Current interface screenshot

Using Elements LaTeX on macOS

Simply download the latest release and install it. MacOS will probably block the app opening because "the developper isn't identified". Until I sign the application with an Apple Developper Account, you can work around by clicking Show in Finder and Ctrl + click on the app icon.

To compile a document, you'll need to have a LaTeX installation. You can download it on the official website, but you can use any other LaTeX installation as long as the pdflatex command is available.

Building the project from source

Start by installing Node.js and git if not already done. Type the following commands to clone the Elements-LaTeX repository and install the dependencies:

mkdir elements-latex
cd elements-latex
git clone https://github.com/Red-Rapious/Elements-LaTeX
npm install electron -D

npm install electron-settings -D
npm install fix-path@v3.0.0 -D
npm install electron-context-menu -D

Note: this library might be included as a submodule in the future (or using the electron-pdf-viewer node package), but you'll need to install it by yourself to build the project in it's current state.

To do so, download the PDF.js library here, and add the extracted pdfjs folder in elements-latex/src/libs.

Finally, the code-input submodules seems to be broken, so you'll need to install a previous version manually. Download the v1.0.3 release here and extract it in elements-latex/src/libs/code-input-1.0.3. I'll try to fix this submodule issue ASAP, sorry for the inconvenience.

The final project structure should look as follows:

elements-latex
│   README.md
│   ...   
└─── assets
└─── src
|    └─── libs
|    │   └─── pdfjs
|    │       └─── build
|    |       └─── web
|    │   └─── code-input-1.0.3
|    │   └─── ... (other submodules)
└─── node_modules
└─── ...

Then, to start the project, type:

npm start

Note: working with .tex files contained in the elements-latex folder is not recommended, and can cause diverse issues.

If you want to build the project, you can lauch:

npm run build

Note: this npm script uses the electron-builder package to build the project: you can install it by launching npm install electron-builder -D.

Developpement status

Currently working on v0.0.3: middle phase of developpement. This project is currently paused ; I continue development at some point in the future.

License

This work is licensed under the CC-BY-NC-SA 4.0 license.

Contributors

Features list

Feature Status Planned for
Resizable panels mechanism v 0.0.0
Full interface structure v 0.0.1
Create and open a folder/file v 0.0.1
Modify and save file efficently v 0.0.1
Show generated PDF v 0.0.1
Compile file v 0.0.2
Syntax highlightning v 0.0.2
Quick interface changes buttons v 0.0.3
Startup window v 0.0.3
Show erros during compilation v 0.0.4
Line numbers v 0.0.4
Interface embellishment v 0.0.4
File structure (inverse search) v 0.0.5
Default templates v 0.0.5
Settings panel v 0.0.6
Integrated git support v 0.0.6
Text editor features (find, ...) v 0.0.7
Autocompletion v 0.0.8
  • ✅ Implemented
  • 🔶 In active development
  • ❌ Not implemented yet