configure a Python env for the slides
This commit is contained in:
parent
5841960b1d
commit
5b850470ba
240
slides/demo.md
Normal file
240
slides/demo.md
Normal file
@ -0,0 +1,240 @@
|
||||
---
|
||||
title: A introduction to Nix(OS)
|
||||
author: Birk
|
||||
theme:
|
||||
name: tokyonight-storm
|
||||
options:
|
||||
auto_render_languages:
|
||||
- mermaid
|
||||
---
|
||||
|
||||
Customizability
|
||||
---
|
||||
|
||||
_presenterm_ allows configuring almost anything about your presentation:
|
||||
|
||||
* The colors used.
|
||||
* Layouts.
|
||||
* Footers, including images in the footer.
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
Mark --> Bob: Hello!
|
||||
Bob --> Mark: Oh, hi mark!
|
||||
```
|
||||
|
||||
<!-- pause -->
|
||||
|
||||
This is an example on how to configure a footer:
|
||||
|
||||
```yaml
|
||||
footer:
|
||||
style: template
|
||||
left:
|
||||
image: doge.png
|
||||
center: '<span class="noice">Colored</span> _footer_'
|
||||
right: "{current_slide} / {total_slides}"
|
||||
height: 5
|
||||
|
||||
palette:
|
||||
classes:
|
||||
noice:
|
||||
foreground: red
|
||||
```
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Headers
|
||||
---
|
||||
|
||||
Markdown headers can be used to set slide titles like:
|
||||
|
||||
```markdown
|
||||
Headers
|
||||
-------
|
||||
```
|
||||
|
||||
# Headers
|
||||
|
||||
Each header type can be styled differently.
|
||||
|
||||
## Subheaders
|
||||
|
||||
### And more
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Code highlighting
|
||||
---
|
||||
|
||||
Highlight code in 50+ programming languages:
|
||||
|
||||
```rust
|
||||
// Rust
|
||||
fn greet() -> &'static str {
|
||||
"hi mom"
|
||||
}
|
||||
```
|
||||
|
||||
```python
|
||||
# Python
|
||||
def greet() -> str:
|
||||
return "hi mom"
|
||||
```
|
||||
|
||||
<!-- pause -->
|
||||
|
||||
-------
|
||||
|
||||
Code snippets can have different styles including no background:
|
||||
|
||||
```cpp +no_background +line_numbers
|
||||
// C++
|
||||
string greet() {
|
||||
return "hi mom";
|
||||
}
|
||||
```
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Dynamic code highlighting
|
||||
---
|
||||
|
||||
Dynamically highlight different subsets of lines:
|
||||
|
||||
```rust {1-4|6-10|all} +line_numbers
|
||||
#[derive(Clone, Debug)]
|
||||
struct Person {
|
||||
name: String,
|
||||
}
|
||||
|
||||
impl Person {
|
||||
fn say_hello(&self) {
|
||||
println!("hello, I'm {}", self.name)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Snippet execution
|
||||
---
|
||||
|
||||
Code snippets can be executed on demand:
|
||||
|
||||
* For 20+ languages, including compiled ones.
|
||||
* Display their output in real time.
|
||||
* Comment out unimportant lines to hide them.
|
||||
|
||||
```rust +exec
|
||||
# use std::thread::sleep;
|
||||
# use std::time::Duration;
|
||||
fn main() {
|
||||
let names = ["Alice", "Bob", "Eve", "Mallory", "Trent"];
|
||||
for name in names {
|
||||
println!("Hi {name}!");
|
||||
sleep(Duration::from_millis(500));
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Images
|
||||
---
|
||||
|
||||
Images and animated gifs are supported in terminals such as:
|
||||
|
||||
* kitty
|
||||
* iterm2
|
||||
* wezterm
|
||||
* ghostty
|
||||
* Any sixel enabled terminal
|
||||
|
||||
<!-- column_layout: [1, 3, 1] -->
|
||||
|
||||
<!-- column: 1 -->
|
||||
|
||||
|
||||
_Picture by Alexis Bailey / CC BY-NC 4.0_
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Column layouts
|
||||
---
|
||||
|
||||
<!-- column_layout: [7, 3] -->
|
||||
|
||||
<!-- column: 0 -->
|
||||
|
||||
Use column layouts to structure your presentation:
|
||||
|
||||
* Define the number of columns.
|
||||
* Adjust column widths as needed.
|
||||
* Write content into every column.
|
||||
|
||||
```rust
|
||||
fn potato() -> u32 {
|
||||
42
|
||||
}
|
||||
```
|
||||
|
||||
<!-- column: 1 -->
|
||||
|
||||
<!-- reset_layout -->
|
||||
|
||||
---
|
||||
|
||||
Layouts can be reset at any time.
|
||||
|
||||
```python
|
||||
print("Hello world!")
|
||||
```
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
Text formatting
|
||||
---
|
||||
|
||||
Text formatting works including:
|
||||
|
||||
* **Bold text**.
|
||||
* _Italics_.
|
||||
* **_Bold and italic_**.
|
||||
* ~Strikethrough~.
|
||||
* `Inline code`.
|
||||
* Links [](https://example.com/)
|
||||
* <span style="color: red">Colored</span> text.
|
||||
* <span style="color: blue; background-color: black">Background color</span> can be changed too.
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
More markdown
|
||||
---
|
||||
|
||||
Other markdown elements supported are:
|
||||
|
||||
# Block quotes
|
||||
|
||||
> Lorem ipsum dolor sit amet. Eos laudantium animi ut ipsam beataeet
|
||||
> et exercitationem deleniti et quia maiores a cumque enim et
|
||||
> aspernatur nesciunt sed adipisci quis.
|
||||
|
||||
# Alerts
|
||||
|
||||
> [!caution]
|
||||
> Github style alerts
|
||||
|
||||
# Tables
|
||||
|
||||
| Name | Taste |
|
||||
| ------ | ------ |
|
||||
| Potato | Great |
|
||||
| Carrot | Yuck |
|
||||
|
||||
<!-- end_slide -->
|
||||
|
||||
<!-- jump_to_middle -->
|
||||
|
||||
The end
|
||||
---
|
56
slides/flake.nix
Normal file
56
slides/flake.nix
Normal file
@ -0,0 +1,56 @@
|
||||
# { ... }:
|
||||
|
||||
# let
|
||||
# pkgs =
|
||||
# import
|
||||
# (fetchTarball "https://github.com/NixOS/nixpkgs/archive/10e687235226880ed5e9f33f1ffa71fe60f2638a.tar.gz")
|
||||
# { };
|
||||
# in
|
||||
# pkgs.mkShell {
|
||||
# packages = [
|
||||
# (with pkgs; [
|
||||
# locale
|
||||
# ])
|
||||
# (pkgs.python312Full.withPackages (
|
||||
# python-pkgs: with python-pkgs; [
|
||||
# pip
|
||||
# ]
|
||||
# ))
|
||||
# ];
|
||||
# }
|
||||
|
||||
{
|
||||
description = "Python environment";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs =
|
||||
{
|
||||
nixpkgs,
|
||||
flake-utils,
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (
|
||||
system:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in
|
||||
{
|
||||
formatter = pkgs.nixfmt-tree;
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [
|
||||
(with pkgs; [
|
||||
locale
|
||||
])
|
||||
(pkgs.python312Full.withPackages (
|
||||
python-pkgs: with python-pkgs; [
|
||||
pip
|
||||
]
|
||||
))
|
||||
];
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
Loading…
Reference in New Issue
Block a user