Server.new
Behavior: Borrowed bindings.
Source and package
- Qualified name
-
LibTmux:: Server. new - Module
- LibTmux
- Declared in
Server- Package
- libtmux
- Source
- gems/libtmux/lib/libtmux/server.rb
- def self.new: ( ?endpoint: ::Lib
Tmux:: ?, ?socketEndpoint _path : ::String?, ?socket_name : ::String?, ?executable: ::String, ?max_requests : ::Integer, ?max_controls : ::Integer, ?close_timeout : ::Numeric, ?version_timeout : ::Numeric ) -> ::LibTmux:: Server -
Description#
Behavior contract: Borrowed bindings.
Examples#
Connect a Server client to an existing endpoint and close it without stopping the daemon. The outer Server.start block owns the private demonstration server. 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
server.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 |owner|owner.new_session(name: "work", command: ["/bin/cat"])server = LibTmux::Server.new(endpoint: owner.endpoint)beginputs "connected sessions: #{server.list_sessions.length}"ensureserver.closeendputs "sessions after client close: #{owner.list_sessions.length}"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 server.rbExpected output:
connected sessions: 1sessions after client close: 1- Parameters
-
-
endpoint(::LibTmux:: ?) #Endpoint -
socket_path(::String?) # -
socket_name(::String?) # -
executable(::String) # -
max_requests(::Integer) # -
max_controls(::Integer) # -
close_timeout(::Numeric) # -
version_timeout(::Numeric) #
-