-window * * 15 * 100 # top window 15 lines, 100 lines in the buffer
-label 1 "Top Window" # label it
-window 17 * * * # bottom window rest of the screen
- # with default buffer size
-label 2 "Bottom Window" # label
-%1 # current window is 1
+#
+# Make two windows
+# The bottom one is MIN(24, total lines * 3 / 4) lines
+# The top one is the rest of the screen.
+#
+three_fourth = $nrow - ((_ = $nrow * 3 / 4) > 24 ? 24 : $_)
+unset _
+window row = 0, nrow = $three_fourth - 1, label = "Top"
+window row = $three_fourth, label = "Local"
+
+#
+# Useful aliases
+#
+#
+# Standard window
+#
+alias std "window r = $three_fourth, l = $?1 ? $1 : ''"
+#
+# Sysline, add your own options
+#
+alias sysline "_ = select();" \
+ "foreground window(r = 0, nr = 1, nc = $ncol + 1, nl = 0," \
+ "l = sysline, pty = no, frame = no, sh = sysline \\-w), 1;" \
+ "select $_; unset _"
+#
+# Rlogin
+#
+alias rlogin "window r = $three_fourth, l = $1, pty = no, mapnl = no," \
+ "sh = sh \\-c 'echo $TERMCAP | rsh ' + $1 + ' \\'cat > .TERMCAP\\' ;" \
+ "exec rlogin ' + $1"
+alias rl rlogin \$1
+#
+# Two equal windows
+#
+alias two "window r = 1, nr = $nrow / 2 - 1, l = top;" \
+ "window r = $nrow / 2 + 1, l = bottom"