repl: Make the terminal background transparent (#15022)

Keeps the background the same as the output area background by making
the terminal background be `Hsla::transparent_black()`.

Release Notes:

- N/A

---------

Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
This commit is contained in:
Kyle Kelley
2024-07-23 11:03:22 -07:00
committed by GitHub
co-authored by Nathan Sobo Antonio Scandurra
parent d0f52e90e6
commit 53b711c2b4
2 changed files with 57 additions and 94 deletions
+44 -65
View File
@@ -1,29 +1,11 @@
# REPL
Read. Eval. Print. Loop.
<div class="warning">
This feature is in active development. Details may change. We're delighted to get feedback as the REPL feature evolves.
</div>
## Getting started
Bring the power of [Jupyter kernels](https://docs.jupyter.org/en/latest/projects/kernels.html) to your editor! The built-in REPL for Zed allows you to run code interactively in your editor similarly to a notebook with your own text files.
Bring the power of [Jupyter kernels](https://docs.jupyter.org/en/latest/projects/kernels.html) to your editor! The built--in REPL for Zed allows you to run code interactively in your editor similarly to a notebook with your own text files.
<!-- TODO: Include GIF in action -->
To start using the REPL, add the following to your Zed `settings.json`:
```json
{
"jupyter": {
"enabled": true
}
}
```
## Installation
Zed supports running code in multiple languages. To get started, you need to install a kernel for the language you want to use.
@@ -33,7 +15,6 @@ Zed supports running code in multiple languages. To get started, you need to ins
* [Python (ipykernel)](#python)
* [TypeScript (Deno)](#typescript-deno)
Once installed, you can start using the REPL in the respective language files, or other places those languages are supported, such as Markdown.
<!-- TODO: Make markdown a link with an example -->
@@ -46,48 +27,6 @@ The `repl: run` command will be executed on your selection(s), and the result wi
Outputs can be cleared with the `repl: clear outputs` command, or from the REPL menu in the toolbar.
## Changing which kernel is used per language {#changing-kernels}
Assign kernels by name to languages in your `settings.json`.
```jsonc
{
"jupyter": {
"kernel_selections": {
"python": "conda-env",
"typescript": "deno-debug"
}
}
}
```
If you have `jupyter` installed, you can run `jupyter kernelspec list` to see the available kernels.
```
$ jupyter kernelspec list
Available kernels:
ark /Users/z/Library/Jupyter/kernels/ark
conda-base /Users/z/Library/Jupyter/kernels/conda-base
deno /Users/z/Library/Jupyter/kernels/deno
deno-debug /Users/z/Library/Jupyter/kernels/deno-debug
deno-release /Users/z/Library/Jupyter/kernels/deno-release
python-chatlab-dev /Users/z/Library/Jupyter/kernels/python-chatlab-dev
python3 /Users/z/Library/Jupyter/kernels/python3
ruby /Users/z/Library/Jupyter/kernels/ruby
rust /Users/z/Library/Jupyter/kernels/rust
```
Note: Zed will not find kernels nested within your Python `sys.prefix`, shown here as `/Users/z/.pyenv/versions/miniconda3-latest/`.
```
$ jupyter kernelspec list
Available kernels:
conda-base /Users/z/Library/Jupyter/kernels/conda-base
python3 /Users/z/.pyenv/versions/miniconda3-latest/share/jupyter/kernels/python3
```
You must run `python -m ipykernel install --user` to install the kernel.
## Language specific instructions
### Python {#python}
@@ -100,7 +39,6 @@ On MacOS, your system Python will _not_ work. Either set up [pyenv](https://gith
</div>
To setup your current python to have an available kernel, run:
```
@@ -116,7 +54,6 @@ conda install ipykernel
python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
```
#### Virtualenv with pip
```
@@ -130,7 +67,7 @@ python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
[Install Deno](https://docs.deno.com/runtime/manual/getting_started/installation/) and then install the Deno jupyter kernel:
```
deno jupyter --unstable --install
deno jupyter --install
```
### Other languages
@@ -142,3 +79,45 @@ The following languages and kernels are also supported. You can help us out by e
- [Ark Kernel](https://github.com/posit-dev/ark) - via Positron, formerly RStudio
- [Xeus-R](https://github.com/jupyter-xeus/xeus-r)
* [Scala (almond)](https://almond.sh/docs/quick-start-install)
## Changing which kernel is used per language {#changing-kernels}
Zed automatically detects the available kernels on your system. If you need to configure a different default kernel for a
language, you can assign a kernel for any supported language in your `settings.json`.
```jsonc
{
"jupyter": {
"kernel_selections": {
"python": "conda-env",
"typescript": "deno",
"javascript": "deno"
}
}
}
```
If you have `jupyter` installed, you can run `jupyter kernelspec list` to see the available kernels.
```
$ jupyter kernelspec list
Available kernels:
ark /Users/z/Library/Jupyter/kernels/ark
conda-base /Users/z/Library/Jupyter/kernels/conda-base
deno /Users/z/Library/Jupyter/kernels/deno
python-chatlab-dev /Users/z/Library/Jupyter/kernels/python-chatlab-dev
python3 /Users/z/Library/Jupyter/kernels/python3
ruby /Users/z/Library/Jupyter/kernels/ruby
rust /Users/z/Library/Jupyter/kernels/rust
```
Note: Zed will not find kernels nested within your Python `sys.prefix`, shown here as `/Users/z/.pyenv/versions/miniconda3-latest/`.
```
$ jupyter kernelspec list
Available kernels:
conda-base /Users/z/Library/Jupyter/kernels/conda-base
python3 /Users/z/.pyenv/versions/miniconda3-latest/share/jupyter/kernels/python3
```
You must run `python -m ipykernel install --user` to install the kernel.