跳转到主要内容

可访问的JupyterLab主题

项目描述

Jupyter Accessibility logo

JupyterLab可访问主题

信息 链接
项目 OSI License clickable badge - BSD-3 Project backlog clickable badge
工具 Launch on Binder clickable badge

欢迎来到JupyterLab可访问主题的仓库 👋🏽。要了解Jupyter中更广泛的可访问性倡议,请查看jupyter/accessibility仓库

本仓库定义了一套根据WCAG颜色标准的可访问主题。请注意,某些主题针对色盲和/或高对比度进行了优化。在每个主题的README中,您将找到有关颜色、其用途和原始作者引用链接的详细信息。

关于主题

字体

=======

所有主题都使用Atkinson Hyperlegible字体,该字体专注于字母形状区分以增加字符识别,从而提高可读性。

此字体只能更改 Markdown查看器终端 中的字体。您需要从JupyterLab UI中的高级设置编辑器中进行这些更改。

  1. 菜单栏中选择设置选项。
  2. 转到Markdown查看器设置,并输入您想要使用的字体家族。
  3. 要更改终端字体,向下滚动到终端设置并输入字体家族的名称。

要求 📦

安装扩展 🏗

您可以使用pip安装扩展。

pip install jupyterlab-accessible-themes

如果您更喜欢conda

conda install -c conda-forge jupyterlab-accessible-themes

# alternatively you can use mamba
mamba install jupyterlab-accessible-themes

安装扩展后,打开JupyterLab,转到顶部菜单栏,转到设置 > 主题,并选择此扩展提供的主题之一。

choose an accessible theme from Settings > Theme in the JuptyerLab top menu bar

卸载扩展 🧽

要删除扩展,您可以运行以下命令

# if installed with pip
pip uninstall jupyterlab-accessible-themes

# if using conda
conda uninstall jupyterlab-accessible-themes

为JupyterLab可访问主题做贡献 🙋🏽‍♀️

安装开发版本 💻

先决条件

  1. 您需要在您的本地计算机上安装NodeJS以构建扩展包。
  2. Python >= 3.8 和 pip

构建和链接扩展

注意 jlpm 命令是JupyterLab安装的yarn的固定版本。您可以在以下命令中使用yarnnpm代替jlpm

  1. 将此存储库克隆到您的本地计算机

    git clone https://github.com/Quansight-Labs/jupyterlab-accessible-themes.git
    
  2. 切换到jupyterlab-accessible-themes目录

     cd jupyterlab-accessible-themes
    
  3. 可选但推荐 - 使用conda创建并激活开发环境

    # Create environment named `jupyterlab-accessible-themes`
    conda create -n jupyterlab-accessible-themes
    conda activate jupyterlab-accessible-themes
    
  4. 安装JupyterLab和NodeJS(如果尚未安装)

    # Install node and jupyterlab from conda-forge
    conda install -c conda-forge 'nodejs>16' 'jupyterlab<4'
    
  5. 安装节点依赖项并构建扩展

    # Install node dependencies
    jlpm install
    
    # Compile packages before linking to Jupyterlab development version
    jlpm build
    
  6. 以开发模式安装包

    pip install -e .
    
  7. 现在您需要将扩展的开发版本链接到JupyterLab并重新构建TypeScript源代码

    # Link your development version of the extension with JupyterLab
    jupyter labextension develop . --overwrite
    
  8. 在首次安装或进行某些更改后,为了在本地JupyterLab中查看更改,请重新运行以下命令

    # Rebuild extension Typescript source after making changes
    jlpm build
    
  9. 运行JupyterLab并检查安装是否成功

# Run JupyterLab
jupyter lab

重要 一切安装完成后,您需要通过主菜单设置 > 主题在JupyterLab中选择主题。

进一步开发提示

🔍 您可以在不同的终端中同时监视源目录并运行JupyterLab,以监视扩展源代码的更改并自动重新构建扩展。

# Watch the source directory (JupyterLab accessible themes) in one terminal, automatically rebuilding when needed
# Can use yarn or npm depending on your preference
jlpm watch

# Run JupyterLab in another terminal
jupyter lab

在监视命令运行时,每次保存的更改都会立即在本地构建并可供正在运行的JupyterLab实例使用。刷新JupyterLab以在浏览器中加载更改(您可能需要等待几秒钟以使扩展重新构建)。

默认情况下,jlpm build 命令为此扩展生成源映射,以便更容易使用浏览器开发工具进行调试。要为JupyterLab核心扩展生成源映射,您可以运行以下命令

jupyter lab build --minimize=False

提交前钩子 🧹

此存储库使用prettier pre-commit钩子来标准化我们的YAML和markdown结构。

  1. 在运行钩子之前,您需要安装pre-commit包管理器

    # using pip
    pip install pre-commit
    
    # if you prefer using conda
    conda install -c conda-forge pre-commit
    
  2. 从项目的根目录安装git钩子脚本

    # install the pre-commit hooks
    pre-commit install
    
  3. 可选 - 对存储库中的文件运行钩子

    # run the pre-commit hooks
    pre-commit run --all-files
    

卸载开发版本 🧽

  1. 删除扩展

    pip uninstall jupyterlab-accessible-themes
    
  2. 在开发模式下,您还需要删除由jupyter labextension develop命令创建的符号链接。要找到其位置,您可以运行jupyter labextension list以确定labextensions文件夹的位置。然后您可以删除该文件夹中的名为jupyterlab-accessible-themes的符号链接。

测试扩展 ✅

前端测试

此扩展使用Jest对JavaScript代码进行测试。

要执行测试,请运行以下命令

jlpm
jlpm test

集成测试

此扩展使用Playwright进行集成测试(也称为用户级测试)。更确切地说,JupyterLab助手Galata用于处理在JupyterLab中对扩展进行测试。更多详细信息请参阅ui-tests的README。

打包扩展 📦

有关创建jupyterlab-accesible-themes的详细说明,请参阅RELEASE文件。

许可证 📖

本项目的许可协议为BSD-3-Clause许可证.

致谢 🙏🏼

我们想感谢以下资源,因为它们是我们这个存储库中一个或多个主题的灵感来源:

项目详情


下载文件

下载适用于您的平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

jupyterlab_accessible_themes-0.2.0.tar.gz (250.0 kB 查看哈希值)

上传时间

构建分布

jupyterlab_accessible_themes-0.2.0-py2.py3-none-any.whl (81.0 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下组织支持