# Libtmux_unix.Client.remove_environment

- **Module:** Libtmux_unix
- **Package:** libtmux-unix
- **Language:** OCaml
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-ocaml/blob/205dfda49742592b479247049d186956e4a4cfe9/unix/libtmux_unix.mli#L412
- **Public owner:** Libtmux_unix
- **Page:** https://libtmux.org/en/ocaml/latest/reference/libtmux_unix-client-remove_environment/

```
val remove_environment :
  ?cancel:Cancellation.t ->
  t -> Libtmux.Environment.scope -> string -> (unit, Libtmux.Error.t) result
```

Store a removal marker, excluding the variable from future panes.

## Parameters

- `cancel?` (`Cancellation.t`)
- `arg1` (`t`)
- `arg2` (`Libtmux.Environment.scope`)
- `arg3` (`string`)

## tmux command

The tmux commands behind `remove_environment`.

- [`set-environment`](/en/tmux/latest/manual/set-environment/)

## tmux C API

The C declarations in tmux that implement these commands.

- [`cmd_set_environment_entry`](/en/tmux/latest/reference/c-variable-cmd_set_environment_entry/) (attribute)
- [`cmd_set_environment_exec`](/en/tmux/latest/reference/c-function-cmd-set-environment-c-cmd_set_environment_exec/) (function)

## In other ports

Mark a variable so new processes start without it

| Language | Equivalent |
| --- | --- |
| Python | [`libtmux.Server.remove_environment`](/en/py/latest/reference/libtmux-server-remove_environment/) (method) |
| Lua | [`libtmux.Server:remove_environment`](/en/lua/latest/reference/libtmux-server-remove_environment/) (method) |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | [`server.Server.removeEnvironment`](/en/ts/latest/reference/server-server-removeenvironment/) (method) |
| Rust | no equivalent on `Server` |
| Go | [`tmux.Server.RemoveEnvironment`](/en/go/latest/reference/tmux-server-removeenvironment/) (method) |
| Java | no equivalent on `Server` |
| C# | no equivalent on `Server` |
| C++ | no equivalent on `Server` |
| Swift | [`Server.removeEnvironment(_:in:)`](/en/swift/latest/reference/server-removeenvironment(_-in-)/) (method) |
| Perl | No dedicated equivalent in the selected Perl surface. Explicit Server::cmd remains available for native tmux commands. |

No equivalent is recorded in Ruby, PowerShell, Julia, Erlang, Elixir, Common Lisp, Clojure, Kotlin, Scala or F#.

Mark a session variable so new processes start without it

| Language | Equivalent |
| --- | --- |
| Python | [`libtmux.Session.remove_environment`](/en/py/latest/reference/libtmux-session-remove_environment/) (method) |
| Lua | [`libtmux.Session:remove_environment`](/en/lua/latest/reference/libtmux-session-remove_environment/) (method) |
| Haskell | No public Haskell equivalent is implemented; the current modules expose scalar values and version parsing. |
| TypeScript | [`session.Session.removeEnvironment`](/en/ts/latest/reference/session-session-removeenvironment/) (method) |
| Rust | no equivalent on `Session` |
| Go | [`tmux.Session.RemoveEnvironment`](/en/go/latest/reference/tmux-session-removeenvironment/) (method) |
| Java | no equivalent on `Session` |
| C# | no equivalent on `Session` |
| C++ | no equivalent on `Session` |
| Swift | [`Server.removeEnvironment(_:in:)`](/en/swift/latest/reference/server-removeenvironment(_-in-)/) (method) |
| Perl | No dedicated equivalent in the selected Perl surface. Explicit Server::cmd remains available for native tmux commands. |

No equivalent is recorded in Ruby, PowerShell, Julia, Erlang, Elixir, Common Lisp, Clojure, Kotlin, Scala or F#.
