LP Examples¤
LP Source:
```bash lp asserts=Hello fmt=xt_flat session=foo
echo "Hello World"
```
Result:
$ echo "Hello World"
Hello World
LP Source:
```bash lp asserts=Hello fmt=xt_flat
ls -lta /usr/bin | grep env # lp: asserts=env
echo "Hello World" # lp: asserts="[World and Hello] or Foo"
```
Result:
$ ls -lta /usr/bin | grep env
-rwxr-xr-x 1 root root 9958 Jul 19 10:25 pg_virtualenv
-rwxr-xr-x 1 root root 402600 Mar 17 13:20 grub-editenv
-rwxr-xr-x 1 root root 14632 Aug 9 2024 dbus-update-activation-environment
-rwxr-xr-x 1 root root 35200 Apr 8 2024 envsubst
-rwxr-xr-x 1 root root 48072 Apr 5 2024 env
-rwxr-xr-x 1 root root 35208 Apr 5 2024 printenv
-rwxr-xr-x 1 root root 23272 Mar 31 2024 openvt
-rwxr-xr-x 1 root root 4942 Dec 14 2023 env_parallel
-rwxr-xr-x 1 root root 14056 Dec 14 2023 env_parallel.bash
-rwxr-xr-x 1 root root 5382 Dec 14 2023 env_parallel.csh
-rwxr-xr-x 1 root root 13838 Dec 14 2023 env_parallel.dash
-rwxr-xr-x 1 root root 6648 Dec 14 2023 env_parallel.fish
-rwxr-xr-x 1 root root 13143 Dec 14 2023 env_parallel.ksh
-rwxr-xr-x 1 root root 13174 Dec 14 2023 env_parallel.mksh
-rwxr-xr-x 1 root root 13831 Dec 14 2023 env_parallel.sh
-rwxr-xr-x 1 root root 5385 Dec 14 2023 env_parallel.tcsh
-rwxr-xr-x 1 root root 13154 Dec 14 2023 env_parallel.zsh
$ echo "Hello World"
Hello World
Defining a function for later use:
LP Source:
```bash lp new_session=test
say_hello () {
echo -e "Hello, from \n"$(env | grep -i tmux)"";
}
```
Result:
$ say_hello () {
echo -e "Hello, from \n"$(env | grep -i tmux)"";
}
$ say_hello () {
> echo -e "Hello, from \n"$(env | grep -i tmux)"";
> }
$
Heredocs¤
the example includes the previously defined function:
LP Source:
```bash lp session=test asserts=TMUX
echo $0 # lp: expect=bash
export -f say_hello
/bin/bash # lp: expect=
echo $0 # lp: expect=bash
say_hello
R="\x1b["; r="${R}1;31m"
echo -e "Means: We do have
> - $r Cross block sessions ${R}0m
> - $r Blocking commands/subshells ${R}0m
> - and...${R}4m$r Full Ansi
> "
```
Result:
$ echo $0
$ export -f say_hello
$ /bin/bash
$ echo $0
$ say_hello
$ R="\x1b["; r="${R}1;31m"
$ echo -e "Means: We do have
- $r Cross block sessions ${R}0m
- $r Blocking commands/subshells ${R}0m
- and...${R}4m$r Full Ansi
"
$ echo $0
-bash
$
$ export -f say_hello
$ /bin/bash
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$ echo $0
/bin/bash
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$ say_hello
Hello, from
TMUX=/tmp/tmux-1001/default,4111,1 TERM=tmux-256color TMUX_PANE=%1 TERM_PROGRAM=tmux BASH_FUNC_say_hello%%=() { echo -e "Hello, from
"$(env | grep -i tmux)""
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$ R="\x1b["; r="${R}1;31m"
[1m[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$ echo -e "Means: We do have
> - $r Cross block sessions ${R}0m
> - $r Blocking commands/subshells ${R}0m
> - and...${R}4m$r Full Ansi
> "
Means: We do have
- [1m[31m Cross block sessions
[0m- [1m[31m Blocking commands/subshells
[0m- and...[1;4m[31m Full Ansi
[32mrunner@pkrvmjbmru5nbw0[0m:[1m[34m~/work/docutools/docutools[0m$
You can tmux att -t
test to inspect what is going on.