summaryrefslogtreecommitdiff
path: root/src/normal.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.1.0941: macros for MS-Windows are inconsistentv8.1.0941Bram Moolenaar2019-02-171-1/+1
| | | | | | | Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and others. Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the GUI build. (Hirohito Higashi, closes #3932)
* patch 8.1.0940: MS-Windows console resizing not handled properlyv8.1.0940Bram Moolenaar2019-02-171-0/+3
| | | | | | Problem: MS-Windows console resizing not handled properly. Solution: Handle resizing the console better. (Nobuhiro Takasaki, closes #3968, closes #3611)
* patch 8.1.0932: Farsi support is outdated and unusedv8.1.0932Bram Moolenaar2019-02-161-9/+0
| | | | | Problem: Farsi support is outdated and unused. Solution: Delete the Farsi support.
* patch 8.1.0864: cannot have a local value for 'scrolloff' and 'sidescrolloff'v8.1.0864Bram Moolenaar2019-01-311-6/+7
| | | | | | | Problem: Cannot have a local value for 'scrolloff' and 'sidescrolloff'. (Gary Holloway) Solution: Make 'scrolloff' and 'sidescrolloff' global-local. (mostly by Aron Widforss, closes #3539)
* patch 8.1.0856: when scrolling a window the cursorline is not always updatedv8.1.0856Bram Moolenaar2019-01-311-0/+4
| | | | | | | | Problem: When scrolling a window other than the current one the cursorline highlighting is not always updated. (Jason Franklin) Solution: Call redraw_for_cursorline() after scrolling. Only set w_last_cursorline when drawing the cursor line. Reset the lines to be redrawn also when redrawing the whole window.
* patch 8.1.0826: too many #ifdefsv8.1.0826Bram Moolenaar2019-01-261-86/+10
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_VIRTUALEDIT. Adds about 10Kbyte to the code.
* patch 8.1.0806: too many #ifdefsv8.1.0806Bram Moolenaar2019-01-241-80/+8
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 2.
* patch 8.1.0779: argument for message functions is inconsistentv8.1.0779Bram Moolenaar2019-01-191-7/+7
| | | | | Problem: Argument for message functions is inconsistent. Solution: Make first argument to msg() "char *".
* patch 8.1.0743: giving error messages is not flexiblev8.1.0743Bram Moolenaar2019-01-131-16/+16
| | | | | | | | Problem: Giving error messages is not flexible. Solution: Add semsg(). Change argument from "char_u *" to "char *", also for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes #3302) Also make emsg() accept a "char *" argument. Get rid of an enormous number of type casts.
* patch 8.1.0726: redrawing specifically for conceal featurev8.1.0726Bram Moolenaar2019-01-111-1/+1
| | | | | Problem: Redrawing specifically for conceal feature. Solution: Use generic redrawing methods.
* patch 8.1.0719: too many #ifdefsv8.1.0719Bram Moolenaar2019-01-111-10/+2
| | | | | Problem: Too many #ifdefs. Solution: Always build with the +visualextra feature.
* patch 8.1.0686: when 'y' is in 'cpoptions' yanking for the clipboard changes ↵v8.1.0686Bram Moolenaar2019-01-031-3/+8
| | | | | | | | redo Problem: When 'y' is in 'cpoptions' yanking for the clipboard changes redo. Solution: Do not use the 'y' flag when "gui_yank" is TRUE. (Andy Massimino, closes #3760)
* patch 8.1.0648: custom operators can't act upon a forced motionv8.1.0648Bram Moolenaar2018-12-271-3/+7
| | | | | | | Problem: Custom operators can't act upon a forced motion. (Christian Wellenbrock) Solution: Add the forced motion to the mode() result. (Christian Brabandt, closes #3490)
* patch 8.1.0629: "gn" selects the wrong text with a multi-line matchv8.1.0629Bram Moolenaar2018-12-231-1/+1
| | | | | Problem: "gn" selects the wrong text with a multi-line match. Solution: Get the end position from searchit() directly. (closes #3695)
* patch 8.1.0542: shiftwidth() does not take 'vartabstop' into accountv8.1.0542Bram Moolenaar2018-11-221-0/+1
| | | | | | | Problem: shiftwidth() does not take 'vartabstop' into account. Solution: Use the cursor position or a position explicitly passed. Also make >> and << work better with 'vartabstop'. (Christian Brabandt)
* patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no namev8.1.0514Bram Moolenaar2018-11-101-1/+2
| | | | | | Problem: CTRL-W ^ does not work when alternate buffer has no name. Solution: Use another method to split and edit the alternate buffer. (Jason Franklin)
* patch 8.1.0443: unnecessary static function prototypesv8.1.0443Bram Moolenaar2018-09-301-13/+0
| | | | | Problem: Unnecessary static function prototypes. Solution: Remove unnecessary prototypes.
* patch 8.1.0233: "safe" argument of call_vim_function() is always FALSEv8.1.0233Bram Moolenaar2018-08-011-1/+1
| | | | | Problem: "safe" argument of call_vim_function() is always FALSE. Solution: Remove the argument.
* patch 8.1.0226: too many #ifdefsv8.1.0226Bram Moolenaar2018-07-291-8/+2
| | | | | | Problem: Too many #ifdefs. Solution: Graduate the +vreplace feature, it's not much code and quite a few #ifdefs.
* patch 8.1.0213: CTRL-W CR does not work properly in a quickfix windowv8.1.0213Bram Moolenaar2018-07-251-10/+4
| | | | | Problem: CTRL-W CR does not work properly in a quickfix window. Solution: Split the window if needed. (Jason Franklin)
* patch 8.1.0053: first argument of 'completefunc' has inconsistent typev8.1.0053Bram Moolenaar2018-06-121-4/+6
| | | | | | | Problem: The first argument given to 'completefunc' can be Number or String, depending on the value. Solution: Avoid guessing the type of an argument, use typval_T in the callers of call_vim_function(). (Ozaki Kiichi, closes #2993)
* patch 8.1.0027: difficult to make a plugin that feeds a line to a jobv8.1.0027Bram Moolenaar2018-06-031-0/+65
| | | | | Problem: Difficult to make a plugin that feeds a line to a job. Solution: Add the nitial code for the "prompt" buftype.
* patch 8.1.0020: cannot tell whether a register is executing or recordingv8.1.0020Bram Moolenaar2018-05-221-3/+3
| | | | | | | | Problem: Cannot tell whether a register is being used for executing or recording. Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi, closes #2745) Rename the global variables for consistency. Store the register name in reg_executing.
* patch 8.0.1809: various typosv8.0.1809Bram Moolenaar2018-05-101-2/+2
| | | | | Problem: Various typos. Solution: Correct the mistakes, change "cursur" to "cursor". (closes #2887)
* patch 8.0.1758: open_line() returns TRUE/FALSE for success/failurev8.0.1758Bram Moolenaar2018-04-241-1/+1
| | | | | Problem: open_line() returns TRUE/FALSE for success/failure. Solution: Return OK or FAIL.
* patch 8.0.1753: various warnings from a static analyserv8.0.1753Bram Moolenaar2018-04-241-1/+1
| | | | | | Problem: Various warnings from a static analyser Solution: Add type casts, remove unneeded conditions. (Christian Brabandt, closes #2770)
* patch 8.0.1566: too many #ifdefsv8.0.1566Bram Moolenaar2018-03-041-6/+0
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_SCROLLBIND and FEAT_CURSORBIND.
* patch 8.0.1564: too many #ifdefsv8.0.1564Bram Moolenaar2018-03-041-27/+5
| | | | | | Problem: Too many #ifdefs. Solution: Graduate the +autocmd feature. Takes away 450 #ifdefs and increases code size of tiny Vim by only 40 Kbyte.
* patch 8.0.1558: no right-click menu in a terminalv8.0.1558Bram Moolenaar2018-03-031-62/+74
| | | | | Problem: No right-click menu in a terminal. Solution: Implement the right click menu for the terminal.
* patch 8.0.1523: cannot write and read terminal screendumpsv8.0.1523Bram Moolenaar2018-02-181-0/+5
| | | | | | Problem: Cannot write and read terminal screendumps. Solution: Add term_dumpwrite(), term_dumpread() and term_dumpdiff(). Also add assert_equalfile().
* patch 8.0.1496: clearing a pointer takes two linesv8.0.1496Bram Moolenaar2018-02-101-2/+1
| | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629)
* patch 8.0.1475: invalid memory access in read_redo()v8.0.1475Bram Moolenaar2018-02-061-6/+16
| | | | | | Problem: Invalid memory access in read_redo(). (gy741) Solution: Convert the replacement character back from a negative number to CR or NL. (hint by Dominique Pelle, closes #2616)
* patch 8.0.1419: cursor column is not updated after ]sv8.0.1419Bram Moolenaar2017-12-211-0/+2
| | | | | Problem: Cursor column is not updated after ]s. (Gary Johnson) Solution: Set the curswant flag.
* patch 8.0.1411: reading invalid memory with CTRL-W :v8.0.1411Bram Moolenaar2017-12-191-0/+4
| | | | | Problem: Reading invalid memory with CTRL-W :. Solution: Correct the command characters. (closes #2469)
* patch 8.0.1338: USE_IM_CONTROL is confusing and incompletev8.0.1338Bram Moolenaar2017-11-251-3/+3
| | | | | Problem: USE_IM_CONTROL is confusing and incomplete. Solution: Just use FEAT_MBYTE. Call 'imactivatefunc' also without GUI.
* patch 8.0.1323: mouse events in a terminal window may cause endless loopv8.0.1323Bram Moolenaar2017-11-201-1/+3
| | | | | | Problem: Mouse events in a terminal window may cause endless loop. Solution: Adjust position computation. Don't stuff a mouse event when coming from normal_cmd().
* patch 8.0.1312: balloon_show() only works in terminal when compiled with GUIv8.0.1312Bram Moolenaar2017-11-181-1/+1
| | | | | | Problem: balloon_show() only works in terminal when compiled with the GUI. Solution: Add FEAT_BEVAL_GUI and refactor to move common code out of the GUI specific file.
* patch 8.0.1309: cannot use 'balloonexpr' in a terminalv8.0.1309Bram Moolenaar2017-11-181-1/+17
| | | | | | Problem: Cannot use 'balloonexpr' in a terminal. Solution: Add 'balloonevalterm' and add code to handle mouse movements in a terminal. Initial implementation for Unix with GUI.
* patch 8.0.1215: newer gcc warns for implicit fallthroughv8.0.1215Bram Moolenaar2017-10-241-4/+5
| | | | | Problem: Newer gcc warns for implicit fallthrough. Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt)
* patch 8.0.1201: "yL" is affected by 'scrolloff'v8.0.1201Bram Moolenaar2017-10-151-1/+3
| | | | | Problem: "yL" is affected by 'scrolloff'. (Eli the Bearded) Solution: Don't use 'scrolloff' when an operator is pending.
* patch 8.0.1138: click in window toolbar starts Visual modev8.0.1138Bram Moolenaar2017-09-231-0/+6
| | | | | Problem: Click in window toolbar starts Visual mode. Solution: Add the MOUSE_WINBAR flag.
* patch 8.0.1136: W_WIDTH() is always the samev8.0.1136Bram Moolenaar2017-09-221-11/+11
| | | | | Problem: W_WIDTH() is always the same. Solution: Expand the macro.
* patch 8.0.1123: cannot define a toolbar for a windowv8.0.1123Bram Moolenaar2017-09-171-2/+2
| | | | | Problem: Cannot define a toolbar for a window. Solution: Add a window-local toolbar.
* patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefsv8.0.1118Bram Moolenaar2017-09-161-44/+7
| | | | | | Problem: FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always enabled and only adds 7% to the binary size of the tiny build. Solution: Graduate FEAT_WINDOWS.
* patch 8.0.1113: can go to Insert mode from Terminal-Normal modev8.0.1113Bram Moolenaar2017-09-161-2/+13
| | | | | | Problem: Can go to Insert mode from Terminal-Normal mode. Solution: Prevent :startinsert and "VA" to enter Insert mode. (Yasuhiro Matsumoto, closes #2092)
* patch 8.0.1091: test for <cexpr> fails without +balloon_eval featurev8.0.1091Bram Moolenaar2017-09-101-24/+0
| | | | | Problem: Test for <cexpr> fails without +balloon_eval feature. Solution: Remove #ifdefs.
* patch 8.0.0998: strange error when using K while only spaces are selectedv8.0.0998Bram Moolenaar2017-08-261-0/+5
| | | | | | Problem: Strange error when using K while only spaces are selected. (Christian J. Robinson) Solution: Check for blank argument.
* patch 8.0.0962: crash with virtualedit and joining linesv8.0.0962Bram Moolenaar2017-08-191-0/+6
| | | | | | Problem: Crash with virtualedit and joining lines. (Joshua T Corbin, Neovim #6726) Solution: When using a mark check that coladd is valid.
* patch 8.0.0948: crash if timer closes window while dragging status linev8.0.0948Bram Moolenaar2017-08-161-2/+5
| | | | | | Problem: Crash if timer closes window while dragging status line. Solution: Check if the window still exists. (Yasuhiro Matsumoto, closes #1979)
* patch 8.0.0947: entering terminal using C-O C-W C-W goes to Insert modev8.0.0947Bram Moolenaar2017-08-161-0/+6
| | | | | | Problem: When in Insert mode and using CTRL-O CTRL-W CTRL-W to move to a termainal window, get in a weird Insert mode. Solution: Don't go to Insert mode in a terminal window. (closes #1977)