Options.set
Behavior: Options and hooks.
Source and package
- Qualified name
-
LibTmux:: Options# set - Module
- LibTmux
- Declared in
Options- Package
- libtmux
- Source
- gems/libtmux/lib/libtmux/options.rb
-
Description#
Behavior contract: Options and hooks.
Examples#
Set and read a session option, convert its value to an Integer, and attach a hook command to the same session. Use Ruby 3.3 or newer with Bundler, and tmux 3.3a or newer, on Unix with
/bin/catand/bin/shavailable. In an empty directory, save thisGemfile:source "https://rubygems.org"gem "libtmux", "0.1.1"Save this complete program as
options.rb. ItsServer.start()block owns a private tmux server and stops it on exit, including after an error. View source# frozen_string_literal: truebegin# docs:begin mainrequire "libtmux"LibTmux::Server.start do |server|session = server.new_session(name: "work", command: ["/bin/cat"])session.options.set("history-limit", 5000)limit = session.options.get("history-limit")puts "history-limit: #{limit.as(:integer)}"puts "inherited: #{limit.inherited?}"session.hooks.set("after-new-window", command: "display-message created")puts "hook: #{session.hooks.get('after-new-window').as(:string)}"end# docs:end mainrescue StandardError => errorwarn "#{error.class}: #{error.message}"exit 1endInstall the gem and run the program. An operation or cleanup error makes it exit unsuccessfully:
Terminal window $ bundle install && \bundle exec ruby options.rbExpected output:
history-limit: 5000inherited: falsehook: display-message created
tmux command#
The tmux commands behind set.
tmux C API#
The C declarations in tmux that implement these commands.
tmux options#
Settings for the server, sessions, windows and panes, with their types, defaults and allowed values.