Skip to content
This repository was archived by the owner on Sep 30, 2025. It is now read-only.

dyld-w/Overleaf-Workshop

 
 

Overleaf Workshop

GitHub Repo stars version Visual Studio Marketplace Installs updated release

Open Overleaf (ShareLatex) projects in VSCode, with full collaboration support.

NOTE

This is a forked version of the excellent Overleaf Workshop project that iamhyc started. The core difference is that this version has more robust conflict resolution to better suit my use-case. More specifically, it invokes the git and code CLIs for detecting merge conflicts and launching a 3-way merge editor respectively.

This is largely quick and dirty changes to get the functionality I need. TBD whether I'll revisit and refactor for best practices.

Requirements

Visual Studio Code + code CLI (REQUIRED)

This extension relies on the code command for merge/edit helpers and deep-linking.

  • Verify: code --version prints a version.
  • macOS: Open VS Code → Command Palette → Shell Command: Install 'code' command in PATH.
  • Windows: In the VS Code installer, check “Add to PATH”. If needed, add:
    • User install: %LocalAppData%\Programs\Microsoft VS Code\bin
    • System install: C:\Program Files\Microsoft VS Code\bin
  • Linux: Install via your package manager (e.g., apt, dnf, snap) so /usr/bin/code (or /snap/bin/code) exists.

Git (REQUIRED)

git is used for diffing and must be on PATH.

  • Verify: git --version
  • Recommended: Git 2.25+ (modern diff flags and performance).

Fetching New Latest Version

macOS

# Create temp dir and enter it
tmpdir="$(mktemp -d)"; pushd "$tmpdir"

# Download latest release asset + checksum
curl -L -O https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix
curl -L -O https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix.sha256

# Verify checksum (should print "OK")
shasum -a 256 -c overleaf-workshop-enhanced.vsix.sha256

# Install into VS Code
code --install-extension ./overleaf-workshop-enhanced.vsix --force

# Leave and remove temp dir
popd; rm -rf "$tmpdir"

Linux

# Create temp dir and enter it
tmpdir="$(mktemp -d)"; pushd "$tmpdir"

# Download latest release asset + checksum
curl -L -O https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix
curl -L -O https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix.sha256

# Verify checksum (should print "OK")
sha256sum -c overleaf-workshop-enhanced.vsix.sha256

# Install into VS Code
code --install-extension ./overleaf-workshop-enhanced.vsix --force

# Leave and remove temp dir
popd; rm -rf "$tmpdir"

Windows (PowerShell)

# Create temp dir and enter it
$tmp = Join-Path $env:TEMP ("overleaf-workshop-" + [guid]::NewGuid())
New-Item -ItemType Directory -Path $tmp | Out-Null
Push-Location $tmp

# Download latest release asset + checksum
Invoke-WebRequest -Uri "https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix" -OutFile "overleaf-workshop-enhanced.vsix"
Invoke-WebRequest -Uri "https://github.com/dyld-w/Overleaf-Workshop/releases/latest/download/overleaf-workshop-enhanced.vsix.sha256" -OutFile "overleaf-workshop-enhanced.vsix.sha256"

# Verify checksum
$hash = (Get-FileHash .\overleaf-workshop-enhanced.vsix -Algorithm SHA256).Hash.ToLower()
$expected = (Get-Content .\overleaf-workshop-enhanced.vsix.sha256).Split()[0].ToLower()
if ($hash -ne $expected) { throw "Checksum MISMATCH! expected $expected got $hash" } else { "Checksum OK" }

# Install into VS Code
code --install-extension .\overleaf-workshop-enhanced.vsix --force

# Leave and remove temp dir
Pop-Location
Remove-Item $tmp -Recurse -Force

iamhyc's Documentation

While most of the below is still accurate, I can't guarantee it'll all be accurate as documentation falls at much lower priority than functionality for my fork.

User Guide

The full user guide is available at GitHub Wiki.

Features

Note

For SSO login or captcha enabled servers like https://www.overleaf.com, please use "Login with Cookies" method. For more details, please refer to How to Login with Cookies.

  • Login Server, Open Projects and Edit Files

  • On-the-fly Compiling and Previewing

    Ctrl+Alt+B to compile, Ctrl+Alt+V preview.

  • SyncTeX and Reverse SyncTeX

    Ctrl+Alt+J to jump to PDF. Double click on PDF to jump to source code

  • Chat with Collaborators

  • Open Project Locally, Compile/Preview with LaTeX-Workshop

How to Login with Cookies

In an already logged-in browser (Firefox for example):

  1. Open "Developer Tools" (usually by pressing F12) and switch to the "Network" tab;

    Then, navigate to the Overleaf main page (e.g., https://www.overleaf.com) in the address bar.

  2. Filter the listed items with /project and select the exact match.

  3. Check the "Cookie" under "Request Headers" of the selected item and copy its value to login.

    The format of the Cookie value would be like: overleaf_session2=... or sharelatex.sid=...

Compatibility

The following Overleaf (ShareLatex) Community Edition docker images provided on Docker Hub have been tested and verified to be compatible with this extension.

Development

Please refer to the development guidance in CONTRIBUTING.md

References

About

Open Overleaf/ShareLaTex projects in vscode, with full collaboration support.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • TypeScript 93.1%
  • Vue 4.1%
  • JavaScript 2.6%
  • Other 0.2%