Commit Graph

65 Commits

Author SHA1 Message Date
Nicholas Marriott
0ede634802 s can be NULL, check for it. 2008-06-17 19:26:19 +00:00
Nicholas Marriott
557b6b86b0 Add a couple of extra option types, and implement show-options command. 2008-06-15 08:01:54 +00:00
Nicholas Marriott
0f403474aa New window options: force-width and force-height. This will force a window to
an arbitrary width and height (0 for the default unlimited). This is neat for
  emacs which doesn't have a sensible way to force hard wrapping at 80
  columns. Also, don't try to be clever and use clr_eol when redrawing the
  whole screen, it causes trouble since the redraw functions are used to draw
  the blank areas too.
2008-06-14 16:47:20 +00:00
Nicholas Marriott
62d7ad2690 Clear blank area properly on redraw, and add a marker line below it. 2008-06-14 12:05:06 +00:00
Nicholas Marriott
d00914ff2b Set socket mode +x if sessions attached. 2008-06-08 19:49:04 +00:00
Nicholas Marriott
2a2a9760ee Read from pipe to allow client to confirm and socket be closed. 2008-06-07 07:33:03 +00:00
Nicholas Marriott
d51f075a4e Use a socketpair to synchronise server startup. 2008-06-07 07:27:28 +00:00
Nicholas Marriott
958069575d Clear clients with flag too. 2008-06-07 07:13:08 +00:00
Nicholas Marriott
77224aaf8b Be more conservative about redrawing using flags. 2008-06-07 06:47:38 +00:00
Nicholas Marriott
713bad063a Make status-interval actually changeable. 2008-06-07 06:13:21 +00:00
Nicholas Marriott
3cd4a08ffb Make server exit when last session dies. Also fix window check for status activity redraw. 2008-06-06 17:55:27 +00:00
Nicholas Marriott
6a187bb8d3 Some Linux fixes; some code tidying. Don't redraw status bar so often. 2008-06-06 17:20:30 +00:00
Nicholas Marriott
0f95671fe3 Disable/enable window activity monitoring with set-window-option command. 2008-06-04 17:54:27 +00:00
Nicholas Marriott
14b9512546 Add activity monitoring, also invert items on taskbar which have activity. 2008-06-04 16:46:23 +00:00
Nicholas Marriott
031be1fc72 Don't crash when looking at NULL clients; also redraw everything on status change. 2008-06-04 05:47:46 +00:00
Nicholas Marriott
811e75da52 Status bar left and right strings (set with status-left and status-right), and automatic update (at interval set by status-interval). 2008-06-04 05:40:35 +00:00
Nicholas Marriott
9e6090a7a2 Per-session configuration options. 2008-06-03 21:42:37 +00:00
Nicholas Marriott
259dcbbc93 Daemonise before loading configuration. 2008-06-02 21:16:21 +00:00
Nicholas Marriott
a26f58c7c3 Last bits of basic configuration file. By default in ~/.tmux.conf or specified with -f. Just a list of tmux commands executed when the server is started and before and any session/window is created. 2008-06-02 21:08:36 +00:00
Nicholas Marriott
c7243b73cb Move -s and -c down a level so handling them is the responsibility of the command (with some helper functions), rather than the top-level. This changes the action command syntax so that -s and -c must be after the command rather than before. 2008-06-02 18:08:17 +00:00
Nicholas Marriott
5569ff9723 Don't hang when window closes early; also add lots more debugging. 2008-05-31 20:04:15 +00:00
Nicholas Marriott
103748d6ad Major reorganisation of screen handling. 2007-12-06 09:46:23 +00:00
Nicholas Marriott
6f142e9ac6 Don't try to access more windows if the session has been destroyed. 2007-12-04 20:25:17 +00:00
Nicholas Marriott
e0383f59bd Better error messages with no server. 2007-12-01 11:10:33 +00:00
Nicholas Marriott
5cd1d459c5 Three-stage exit process so that [] message printing works on detach etc. 2007-11-27 20:01:30 +00:00
Nicholas Marriott
76c8a590db Big internal reorganisation to move tty control into parent. 2007-11-27 19:23:34 +00:00
Nicholas Marriott
9a6e47cfa8 Initial history support. 2007-11-21 13:11:41 +00:00
Nicholas Marriott
4309d65475 realpath the socket path; also sprinkle some const. 2007-11-12 15:12:08 +00:00
Nicholas Marriott
08d9f46aae Make it build/run on Linux. 2007-10-31 14:26:26 +00:00
Nicholas Marriott
941eab33e9 %u -> %d for indexes. Some lint fixes. 2007-10-30 10:59:43 +00:00
Nicholas Marriott
4ba3cf60be Reorg window data structures. Add an intermediate data type (struct winlink) to hold index and make sessions hold a RB tree of them rather than a fixed array. 2007-10-26 12:29:07 +00:00
Nicholas Marriott
810a8846b7 A couple of close-on-exec flags. 2007-10-24 11:30:02 +00:00
Nicholas Marriott
f941d270ca Save/restore errno, free pfd buffer. 2007-10-24 11:21:29 +00:00
Nicholas Marriott
3859c9f239 Free/close windows properly. 2007-10-24 11:05:59 +00:00
Nicholas Marriott
64713e0511 Tweak a couple of variable names. 2007-10-23 10:25:03 +00:00
Nicholas Marriott
25e94a0526 List client command. 2007-10-23 09:36:19 +00:00
Nicholas Marriott
cf77c80b93 FreeBSD's util.h is libutil.h. 2007-10-19 20:47:09 +00:00
Nicholas Marriott
de24fbb35c Add a bell-action option. 2007-10-19 10:21:36 +00:00
Nicholas Marriott
ad4a7423c0 Mark windows in yellow on status line when bell. 2007-10-12 11:24:15 +00:00
Nicholas Marriott
5a3b92c2df -d option to attach. Also fix CC in Makefile and make it build with DEBUG again. 2007-10-04 21:21:48 +00:00
Nicholas Marriott
5c54e0b7fd Don't accept UINT_MAX as size if no clients/sessions. 2007-10-04 20:01:10 +00:00
Nicholas Marriott
1f9a8e70d9 Incomplete resize support. 2007-10-04 19:03:52 +00:00
Nicholas Marriott
68a5d5c00b Window attachment, malloc debugging, fix a segfault with no sessions. 2007-10-04 11:52:03 +00:00
Nicholas Marriott
815815989a Next/last/previous window, some other tweaks. 2007-10-04 00:02:10 +00:00
Nicholas Marriott
7ba01f6843 New window command. 2007-10-03 23:32:26 +00:00
Nicholas Marriott
df716ecc8f Rewrite command handling to be more generic. Not finished! 2007-10-03 21:31:07 +00:00
Nicholas Marriott
dadc56d754 Key binding, unbinding. 2007-10-03 11:26:34 +00:00
Nicholas Marriott
a68b1e58db xcalloc, otherwise prefix may be !0. 2007-10-03 10:20:33 +00:00
Nicholas Marriott
9bb907f2a7 Move command handling into the server and tidy up some bits. 2007-10-03 10:18:32 +00:00
Nicholas Marriott
2ec60c9d66 Pass bell through from any window. 2007-09-29 09:53:25 +00:00