aboutsummaryrefslogtreecommitdiff
path: root/window-copy.c
Commit message (Collapse)AuthorAge
* Spacing tweaks.nicm2021-08-20
|
* Hide struct args behind a couple of accessor functions.nicm2021-08-20
|
* Remove some unnecessary blank lines.nicm2021-08-20
|
* Remove stray spaces after function names.nicm2021-08-20
|
* Add pipe variants of the line copy commands. While here make the commandnicm2021-08-11
| | | | list less unreadable. GitHub issue 2813.
* Change copy-line and copy-end-of-line not to cancel and add -and-cancelnicm2021-08-09
| | | | variants, like the other copy commands. GitHub issue 2799.
* Fix rectangle selection, from Anindya Mukherjee, GitHub issue 2709.nicm2021-06-10
|
* More accurate vi(1) word navigation in copy mode and on the status line.nicm2021-06-10
| | | | | | This changes the meaning of the word-separators option - setting it to the empty string is equivalent to the previous behavior. From Will Noble in GitHub issue 2693.
* Fix a couple of edge cases with the jump-back-xxx commands, and alsonicm2021-04-05
| | | | | update back-to-indentation to use grid_reader, thereby fixing line wrapping issues. From Anindya Mukherjee, GitHub issue 2633.
* Change search-again with vi keys to work like actual vi(1), also somenicm2021-04-01
| | | | other fixes. From Aaron Jensen with help from Anindya Mukherjee.
* Allow cursor to be just after match if copying, GitHub issue 2602.nicm2021-03-09
|
* Copy mode improvements from Anindya Mukherjee:nicm2021-03-09
| | | | | | | | | | - Fix word and word-end for wrapped lines. - Fix copying of selection end on wrapped lines. - Fix wrapped word selection edge case. - Update select-line to respect wrapped lines. - Update window_copy_..._pos() functions to use grid_reader. GitHub issue 2605.
* Drop support for popups where the content is provided directly to tmuxnicm2021-03-02
| | | | | | (which does not have many practical uses) and only support running a program in the popup. display-popup is now simpler and can accept multiple arguments to avoid escaping problems (like the other commands).
* Fix regex searching with wrapped lines, from Anindya Mukherjee; GitHubnicm2021-02-22
| | | | issue 2570.
* There are many format variables now so allocating all the default onesnicm2021-02-22
| | | | | | | | each time a tree is created is too expensive. Instead, convert them all into callbacks and put them in a static table so they only allocate on demand. The tree remains for the moment for extra (non-default) variables added by for example copy mode or popups. Also reduce expensive calls to localtime_r/strftime. GitHub issue 2253.
* Move jump commands to grid reader, make them UTF-8 aware, and tidy up,nicm2021-02-22
| | | | from Anindya Mukherjee.
* Add "pipe" variants of the "copy-pipe" commands which do not copy, fromnicm2021-02-08
| | | | Christian Zangl.
* Add rectangle-on and rectangle-off copy mode commands, GitHub isse 2546nicm2021-01-22
| | | | from author at will dot party.
* Fix some cursor movement commands, from Anindya Mukherjee.nicm2021-01-22
|
* Hide some warnings on newer GCC versions, GitHUb issue 2525.nicm2021-01-18
|
* With incremental search, start empty and only repeat the previous searchnicm2021-01-08
| | | | | if the user tries to search again with an empty prompt. This matches emacs behaviour more closely.
* Remove unused variable, from Ben Boeckel.nicm2021-01-06
|
* Remove current match indicator which can't work anymore since we onlynicm2020-12-28
| | | | search the visible region. From Anindya Mukherjee, GitHub issue 2508.
* Break cursor movement in grid into a common set of functions that cannicm2020-12-22
| | | | | handle line wrapping and so on in one place and use them for the obvious copy mode commands. From Anindya Mukherjee.
* Allow previous-word to scroll onto the first line, noticed by Anindyanicm2020-11-10
| | | | Mukherjee.
* Do not wrap at end of text when positioning at end of match because thenicm2020-09-22
| | | | length may include trailing spaces.
* Free buffer earlier to avoid confusing some compilers, GitHub issuenicm2020-09-18
| | | | 2382.
* Fix some warnings, GitHub issue 2382.nicm2020-09-16
|
* Change searching to behave more like emacs and so that regex searchingnicm2020-08-05
| | | | doesn't overlap when searching forwards.
* Handle padding cells correctly when searching, GitHub issue 2301.nicm2020-07-15
|
* Correctly move to previous line when looking for previous word, fromnicm2020-06-16
| | | | Derry Jing.
* Add some formats for search in copy mode (search_present, search_match).nicm2020-06-11
| | | | GitHub issue 2268.
* Now that we mostly only search visible text, the rate limit on repeatingnicm2020-06-05
| | | | search does not seem to be necessary, remove it for the moment.
* Search marks outside the visible text are not useful, so there is nonicm2020-06-04
| | | | | point in allocating a big buffer to store them - just allocate the visible text size, and ignore any outside.
* Some improvements to performance of searching:nicm2020-06-04
| | | | | | | | | | | | | | - Do not allow searches to be repeated at intervals of less than 50 milliseconds, to prevent a huge queue of repeat key presses blocking up everything for ages. - If the search text hasn't changed, the match count can't have changed and there is no need to do a full search, so only search the visible text. This includes both scrolling and repeating the search. - Do not redraw twice when jumping to the search location. GitHub issue 2258.
* Make the -no-clear command variants not clear the search marks either.nicm2020-06-04
|
* Missing ; in previous.nicm2020-06-02
|
* Fire copy-pipe command even if there is no text, means it works if itnicm2020-06-02
| | | | has side effects.
* Use CLOCK_MONOTONIC for timer measurement and add a timestamp to controlnicm2020-06-02
| | | | mode %output blocks.
* Tidy up new UTF-8 code and make it more generic.nicm2020-05-25
|
* Do not attempt to divide by zero when working out copy position.nicm2020-05-25
|
* Instead of storing all UTF-8 characters in the extended cell which meansnicm2020-05-25
| | | | | | | that 14 bytes are wasted for each character in the BMP, only store characters of three bytes or less in the cell itself and store others (outside the BMP or with combining characters) in a separate global tree. Can reduce grid memory use for heavy Unicode users by around 30%.
* Add a mark in copy mode. Set with set-mark command (bound to 'X') bynicm2020-05-16
| | | | | | | | default and the mark and cursor position are swapped with 'jump-to-mark' (bound to M-x). The line containing the mark is shown in copy-mode-mark-style with the horizontal position in reverse. From Anindya Mukherjee in GitHub issue 2209.
* Do not loop forever when search finds an empty match, GitHub issue 2203.nicm2020-05-16
|
* Fix next-matching-bracket logic, from Chris Barber.nicm2020-05-16
|
* Store and restore cursor position when copy mode is resized, fromnicm2020-05-16
| | | | Anindya Mukherjee.
* Try to search the entire history first for up to 200 ms so a searchnicm2020-05-16
| | | | count can be shown. If it takes too long, search the visible text only.
* Do not hoke into struct window_pane from the tty code and instead setnicm2020-05-16
| | | | | | | everything up in tty_ctx. Provide a way to initialize the tty_ctx from a callback and use it to let popups draw directly through input_parse in the same way as panes do, rather than forcing a full redraw on every change.
* Copy mode search improvements:nicm2020-05-16
| | | | | | | | | - Add styles for the search marking styles (copy-mode-match-style and copy-mode-current-match-style). - Show the current match (the one with the cursor on it) in a different style. - Copying without a selection will copy the current match if there is one.
* Drop having a separate type for style options and make them all strings,nicm2020-05-16
| | | | | | | | | | | | | | | | | which allows formats to be expanded. Any styles without a '#{' are still validated when they are set but any with a '#{' are not. Formats are not expanded usefully in many cases yet, that will be changed later. To make this work, a few other changes: - set-option -a with a style option automatically appends a ",". - OSC 10 and 11 don't set the window-style option anymore, instead the fg and bg are stored in the pane struct and act as the defaults that can be overridden by window-style. - status-fg and -bg now override status-style instead of trying to keep them in sync.