Skip to main content

Jupyterlab extension to add handling of Makefiles and syntax colouring support

Project description

jupyterlab_makefile_file_type_extension

GitHub Actions npm version PyPI version Total PyPI downloads JupyterLab 4 Brought To You By KOLOMOLO

A JupyterLab extension providing comprehensive Makefile support with syntax highlighting and custom file type recognition.

Makefile Extension Screenshot

Features

Comprehensive Makefile editing support in JupyterLab with syntax highlighting that distinguishes targets, variables, conditionals, and shell constructs.

File recognition:

  • Standard names: Makefile, makefile, GNUmakefile
  • Extensions: *.mk, *.mak, *.make
  • Custom red "M" icon in file browser

Highlighting coverage:

  • Build targets and dependencies
  • Variable references and shell constructs
  • Conditional directives
  • Special targets and silent commands
  • Line continuations and quoted strings

Requirements

  • JupyterLab >= 4.0.0

Install

To install the extension, execute:

pip install jupyterlab_makefile_file_type_extension

Configuration

IMPORTANT: Configure Tab Character Usage

Makefiles require tab characters for recipe command indentation. Recipe lines starting with spaces instead of tabs will cause Make execution to fail with "missing separator" errors. Configure JupyterLab to use tabs:

  1. Open JupyterLab Settings → Settings Editor
  2. Navigate to Text Editor section
  3. Set Indentation Unit to Tab

Alternatively, add this to your JupyterLab Text Editor settings JSON:

{
  "editorConfig": {
    "indentUnit": "Tab",
    "tabSize": 4
  }
}

Note: All recipe commands (lines that execute shell commands under targets) MUST start with a tab character. The syntax highlighter requires tab-indented recipe lines for proper highlighting - space-indented recipes will not be highlighted and will fail during Make execution.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file jupyterlab_makefile_file_type_extension-1.0.88.tar.gz.

File metadata

File hashes

Hashes for jupyterlab_makefile_file_type_extension-1.0.88.tar.gz
Algorithm Hash digest
SHA256 42ff128f01ee2d89ba4f82cc46f11ebf19b1808a3567d4e97b951ca7c9a4624d
MD5 8d584f9d6746aed969828f9e4beafc12
BLAKE2b-256 d03cc9fe424c6815092eeb13fca0a7a5216bb08df60a2325698504bb2c2d97c8

See more details on using hashes here.

File details

Details for the file jupyterlab_makefile_file_type_extension-1.0.88-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_makefile_file_type_extension-1.0.88-py3-none-any.whl
Algorithm Hash digest
SHA256 f9f6c79b383d1bb718305cc9391fe79f0763b1ceec125c3a1b727e1c77ea7259
MD5 3d3ae265fb9d555ac6266e88516fd5f9
BLAKE2b-256 ceba5a84b22cff9cc719da1bf3cca4d83c36f5f2b643a10f257ab396897aea32

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page