Add a -s command line option for specifying session name

This commit is contained in:
Maxime Coste 2013-09-19 19:54:14 +01:00
parent 0b63074f90
commit 415be1d2c7
3 changed files with 7 additions and 7 deletions

View File

@ -178,15 +178,15 @@ int kakoune(memoryview<String> params)
{ {
ParametersParser parser(params, { { "c", true }, ParametersParser parser(params, { { "c", true },
{ "e", true }, { "e", true },
{ "n", false } }); { "n", false },
{ "s", true } });
String init_command; String init_command;
if (parser.has_option("e")) if (parser.has_option("e"))
init_command = parser.option_value("e"); init_command = parser.option_value("e");
if (parser.has_option("c")) if (parser.has_option("c"))
{ {
for (auto opt : { "n" }) for (auto opt : { "n", "s" })
{ {
if (parser.has_option(opt)) if (parser.has_option(opt))
{ {
@ -236,7 +236,7 @@ int kakoune(memoryview<String> params)
write_debug("pid: " + to_string(getpid())); write_debug("pid: " + to_string(getpid()));
write_debug("utf-8 test: é á ï"); write_debug("utf-8 test: é á ï");
Server server; Server server(parser.has_option("s") ? parser.option_value("s") : to_string(getpid()));
if (not parser.has_option("n")) try if (not parser.has_option("n")) try
{ {

View File

@ -508,8 +508,8 @@ private:
FDWatcher m_socket_watcher; FDWatcher m_socket_watcher;
}; };
Server::Server() Server::Server(const String& session_name)
: m_filename{"/tmp/kak-" + to_string(getpid())} : m_filename{"/tmp/kak-" + session_name}
{ {
int listen_sock = socket(AF_UNIX, SOCK_STREAM, 0); int listen_sock = socket(AF_UNIX, SOCK_STREAM, 0);
fcntl(listen_sock, F_SETFD, FD_CLOEXEC); fcntl(listen_sock, F_SETFD, FD_CLOEXEC);

View File

@ -32,7 +32,7 @@ std::unique_ptr<RemoteClient> connect_to(const String& pid,
struct Server : public Singleton<Server> struct Server : public Singleton<Server>
{ {
Server(); Server(const String& session_name);
~Server(); ~Server();
const String& filename() const { return m_filename; } const String& filename() const { return m_filename; }