server-running-p述語は、と評価さtEmacsのセッションが現在のサーバ・プロセスを「所有」にかかわらず、そのうちのEmacsのサーバが実行されている場合。
したがって、同時に実行されている2つ以上の独立したEmacsセッションがある場合、server-running-pでは実際の Emacsセッションがサーバーを実行しているかどうかは実際にはテストされません。
より具体的なテストを探しています。現在のセッション(つまり、テストを実行しているセッション)がEmacsサーバーを実行しているt 場合にのみ評価されます。
1
現在はテストできませんが、サーバーモードが非nilかどうかをテストできます。
—
YoungFrog 2017年
@YoungFrog:提案に感謝しますが、私がテストしたすべての状況(つまり、
—
kjo
server-startその後server-force-delete)で、server-mode常にnilでした。
YoungFrogの提案は良いものだと思いますが、
—
phils 2017年
(server-mode 1)ではなくを呼び出す必要があります(server-start)。前者は後者を呼び出し、server-force-deleteこのモードをチェックして無効にするのでsever-mode、意図したインターフェイスのように見え、server-start直接呼び出すことはできません。
とは言って
—
phils 2017年
server-modeも、あるインスタンスからサーバーを削除してもserver-mode別のインスタンスのの値には影響がないため、使用しても、同じサーバーが複数のEmacsインスタンスを介して起動および削除されることにはなりません。