aboutsummaryrefslogtreecommitdiff
path: root/window-copy.c
Commit message (Collapse)AuthorAge
...
| * paste-buffer should be per pane, from C. Coutinho.Nicholas Marriott2010-03-22
| |
| * Add vi-style "jump" commands for copy mode, from Micah Cowan.Nicholas Marriott2010-03-22
| |
| * Fix a use-after-free when cancelling copy mode, or trying to repeat cancel.Nicholas Marriott2010-03-14
| | | | | | | | ok kettenis
| * Permit keys in copy mode to be prefixed by a repeat count, entered withNicholas Marriott2010-03-02
| | | | | | | | | | | | [1-9] in vi mode, or M-[1-9] in emacs mode. From Micah Cowan, tweaked a little by me.
| * Extend the end-of-line key so that in normal mode a second press movesNicholas Marriott2010-03-01
| | | | | | | | | | | | | | | | the cursor to the end of a wrapped line (if present) and in rectangle mode it toggles between the end of the text and the last cell on the line. From Micah Cowan.
| * Option to set the characters considered word separators in copy mode, fromNicholas Marriott2010-02-22
| | | | | | | | Micah Cowan.
| * Another copy mode fix from Micah Cowan: in rectangle copy mode, the cursorNicholas Marriott2010-02-22
| | | | | | | | | | should not wrap at the end of the text on the line but should be allowed to move freely.
| * copy mode uses the real screen as backing and if it is updated while copying,Nicholas Marriott2010-02-19
| | | | | | | | strange things can happen. So, freeze reading from the pty while in copy mode.
| * Make next-word stop at beginning of word even if it is at the start of theNicholas Marriott2010-02-17
| | | | | | | | line, from Micah Cowan.
| * Don't strip add newline if only copying part of wrapped line. Problem spottedNicholas Marriott2010-02-17
| | | | | | | | by and fix from Micah Cowan.
| * Add "N" key to search the opposite way from the last search (reverse of "n"),Nicholas Marriott2010-02-11
| | | | | | | | from Micah Cowan.
| * Rectangle copy support, from Robin Lee Powell.Nicholas Marriott2010-02-06
| |
| * vi-style B, W and E keys in copy mode to navigate between words treating onlyNicholas Marriott2010-02-04
| | | | | | | | | | | | | | spaces as word separators. Also add . to the list of word separators for standard word navigation. From Micah Cowan, tweaked slightly by me.
| * Alter next-word to have vi-like movement behaviour, and add next-word-end withNicholas Marriott2010-01-27
| | | | | | | | the existing emacs behaviour. From Micah Cowan.
| * Hugely simplify window_copy_cursor_next_word, which was way overcomplicated.Nicholas Marriott2010-01-25
| |
| * Update the selection properly after goto line or searching.Nicholas Marriott2010-01-25
| |
| * Top/bottom of history mode keys, diff from Micah Cowan, tweaked by me.Nicholas Marriott2010-01-25
| |
| * Redraw properly when scrolling backward and the cursor is on the lastNicholas Marriott2010-01-24
| | | | | | | | line. Based on a fix from Micah Cowan.
| * Massive spaces->tabs and trailing whitespace cleanup, hopefully for the lastNicholas Marriott2009-12-03
| | | | | | | | | | time now I've configured emacs to make them displayed in really annoying colours...
| * Remove a couple of unused arguments where possible, and add /* ARGSUSED */ toNicholas Marriott2009-11-26
| | | | | | | | the rest to reduce lint output.
| * Missed an unused variable :-/.Nicholas Marriott2009-11-18
| |
| * Cleanup by moving various (mostly horrible) little bits handling UTF-8 gridNicholas Marriott2009-11-18
| | | | | | | | | | | | | | data into functions in a new file, grid-utf8.c, and use sizeof intead of UTF8_DATA. Also nuke trailing whitespace from tmux.1, reminded by jmc.
| * Correctly nuke the EOL $ marker when scrolling, reported by martynas@, thanks.Nicholas Marriott2009-10-20
| |
| * Add mode keys to move the cursor to the top, middle and bottom of the screen.Nicholas Marriott2009-10-13
| | | | | | | | H/M/L in vi mode and M-R/M-r in emacs (bottom of screen not bound in emacs).
| * Clean up by introducing a wrapper struct for mouse clicks rather than passingNicholas Marriott2009-10-11
| | | | | | | | | | | | | | three u_chars around. As a side-effect this fixes incorrectly rejecting high cursor positions (because it was comparing them as signed char), reported by Tom Doherty.
| * Make C-Up and C-Down in copy mode scroll the screen up and down one lineNicholas Marriott2009-10-06
| | | | | | | | | | without moving the cursor, like Up and Down in scroll mode (which will shortly disappear).
| * Permit options such as status-bg to be configured using the entire 256 colourNicholas Marriott2009-09-10
| | | | | | | | palette by setting "colour0" to "colour255".
| * Give each paste buffer a size member instead of requiring them to beNicholas Marriott2009-09-07
| | | | | | | | zero-terminated.
| * When moving up or down in copy mode, save the cursor position and size of theNicholas Marriott2009-08-21
| | | | | | | | | | | | last line with content (width != 0) and use it to determine if the cursor should be at the end of the line. Fixes problem of the cursor always jumping to the end of the line when scrolling past a blank line.
| * Don't read beyond the edge of the screen when searching (dies with debugNicholas Marriott2009-08-19
| | | | | | | | enabled).
| * Nuke unnecessary assignment.Nicholas Marriott2009-08-18
| |
| * Add a "delete line" key when editing in the status line or the search up/downNicholas Marriott2009-08-18
| | | | | | | | prompt. C-u with emacs keys, d with vi.
| * Add (naive) searching and goto line in copy mode. Searching is C-r and C-s withNicholas Marriott2009-08-18
| | | | | | | | | | | | | | | | | | | | emacs keys, / and ? with vi; n repeats the search again with either key set. All searching wraps the top/bottom. Goto line is g for both emacs and vi. The search prompts don't have full line editing, just simple append and delete characters. Also sort the mode keys list in tmux.1.
| * vi(1)-style half page scroll in copy and scroll modes. Move the vi full pageNicholas Marriott2009-08-13
| | | | | | | | | | | | | | scroll key to C-b instead of C-u and use C-u/C-d for half page scrolling with vi keys. In emacs mode, half page scrolling is bound to M-Up and M-Down. Suggested by merdely (about a year ago :-)).
| * Scroll by two less than the number of lines in the screen, like emacs, ratherNicholas Marriott2009-08-13
| | | | | | | | | | than by the entire screen, to make it easier to pull things out from under the line indicator. Suggested by claudio.
| * Allowing copy mode to scroll left and right is annoying, so limit it to theNicholas Marriott2009-08-13
| | | | | | | | | | | | | | | | real screen width. To indicate the cursor is at the end of the line rather than the cell before, put a '$' in the last cell. Also clear the selection when the terminal is resized to avoid tmux getting confused.
| * Redraw the screen after resizing.Nicholas Marriott2009-08-13
| |
| * Add a flags member to the grid_line struct and use it to differentiate linesNicholas Marriott2009-08-08
| | | | | | | | | | wrapped at the screen edge from those terminated by a newline. Then use this when copying to combine wrapped lines together into one.
| * Change the way the grid is stored, previously it was:Nicholas Marriott2009-08-08
| | | | | | | | | | | | | | | | | | | | | | - a two-dimensional array of cells; - a two-dimensional array of utf8 data; - an array of line lengths. Now it is a single array of a new struct grid_line each of which represents a line and containts the length and an array of cells and an array of utf8 data. This will make it easier to add additional per-line members, such as flags.
| * If colours are not supported by the terminal, try to emulate a colouredNicholas Marriott2009-08-05
| | | | | | | | | | | | | | | | background by setting or clearing the reverse attribute. This makes a few applications which don't use the reverse attribute themselves a little happier, and allows the status, message and mode options to have default attributes and fg/bg options that work as expected when set as reverse.
| * Add a mode-mouse option to prevent tmux taking over the mouse in choice or copyNicholas Marriott2009-07-30
| | | | | | | | modes.
| * Next step towards customisable mode keys: build each default table of keys intoNicholas Marriott2009-07-28
| | | | | | | | | | | | a named tree on start and use that for lookups. Also add command to string translation tables and modify list-keys to show the the mode key bindings (new -t argument).
| * Remove an unused entry in the mode keys command enum and renameNicholas Marriott2009-07-27
| | | | | | | | MODEKEYCOPY_QUIT to _CANCEL to match the others.
| * Change mode key bindings from big switches into a set of tables. Rather thanNicholas Marriott2009-07-27
| | | | | | | | | | | | | | lumping them all together, split editing keys from those used in choice/more mode and those for copy/scroll mode. Tidier and clearer, and the first step towards customisable mode keys.
| * Get rid of empty mode_key_free function.Nicholas Marriott2009-07-27
| |
| * Change previous-word behavior to move to the beginning of the word (matchesNicholas Marriott2009-07-27
| | | | | | | | emacs and vi). From Kalle Olavi Niemitalo.
| * Redraw after starting selection to correctly remove any existing selection.Nicholas Marriott2009-07-23
| |
| * Add a "back to indentation" key in copy mode to move the cursor to the firstNicholas Marriott2009-07-12
| | | | | | | | | | non-whitespace character. ^ with vi and M-m with emacs key bindings. Another from Kalle Olavi Niemitalo, thanks.
| * Merge three copies of identical code to move the cursor x position into aNicholas Marriott2009-07-12
| | | | | | | | single function, from Kalle Olavi Niemitalo.
| * Copy was using the real line length which after resize can be larger than theNicholas Marriott2009-07-11
| | | | | | | | | | | | | | screen width. When built with -DDEBUG, this made the grid bounds checking code kill the server. Restrict copying to the actual width. From Kalle Olavi Niemitalo, thanks.