Skip to content

Instantly share code, notes, and snippets.

@KeithHanson
Created December 18, 2009 15:44

Revisions

  1. KeithHanson created this gist Dec 18, 2009.
    45 changes: 45 additions & 0 deletions gistfile1
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,45 @@
    # boring stuff...
    shell zsh
    defutf8 on
    startup_message off
    vbell off
    term xterm-color

    # I use ` instead of ^-a as my screen command. You do have to be careful, though,
    # to remember to hit ` twice to enter one (say, for shelling out in config.ru), and
    # just pasting something with `'s is bad. You can use the binding set up below (`])
    # to use pbpaste to safely paste.
    escape ``

    # In Terminal.app -> Settings -> Keyboard, set page up to send \002 and page down to send \006
    # this lets you page up/down to immediately jump into copy/scrollback mode.
    bindkey -d "\002" eval "copy" "stuff ^b"
    bindkey -d "\006" eval "copy" "stuff ^f"
    bindkey -m "\002" stuff ^b
    bindkey -m "\006" stuff ^f

    # This is crappy, but only way I could get it to work. In settings bind
    # ^-left arrow to "\033[1;5C", and ^-right to "\033[1;5D". Lets you move
    # through windows using ^-arrow keys.
    bindkey "\033[1;5C" next
    bindkey "\033[1;5D" prev

    # Two aliases for creating new windows
    bindkey "^n" screen
    bindkey "^t" screen


    # Rebind [ to copy to pbcopy, since I use pageup/down to enter copy mode.
    bind "[" eval "writebuf" "exec sh -c 'pbcopy < /tmp/screen-exchange'"

    # Bind ] to paste.
    bind "]" eval "exec sh -c 'pbpaste'"

    defscrollback 15000

    # crazy stuff at the bottom...
    caption always "%{= 9w} %-w%{= BW} %n %t %{-}%+w %-= @%H - %LD %d %LM - %c"
    hardstatus alwayslastline "%{+b 9r}[ %h ] %{9y} Load: %l %-=%{b} %c %d.%m.%Y"

    # Sets the title of the window to the currently running process.
    shelltitle "> |zsh"