summaryrefslogtreecommitdiff
path: root/src/getchar.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.1.0822: peeking and flushing output slows down executionv8.1.0822Bram Moolenaar2019-01-251-2/+3
| | | | | | Problem: Peeking and flushing output slows down execution. Solution: Do not update the mode message when global_busy is set. Do not flush when only peeking for a character. (Ken Takata)
* patch 8.1.0810: too many #ifdefsv8.1.0810Bram Moolenaar2019-01-241-66/+2
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 4.
* patch 8.1.0785: depending on the configuration some functions are unusedv8.1.0785Bram Moolenaar2019-01-201-0/+2
| | | | | | Problem: Depending on the configuration some functions are unused. Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle, closes #3822)
* 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-11/+11
| | | | | | | | 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.0466: autocmd test failsv8.1.0466Bram Moolenaar2018-10-071-17/+20
| | | | | Problem: Autocmd test fails. Solution: Do call inchar() when flushing typeahead.
* patch 8.1.0443: unnecessary static function prototypesv8.1.0443Bram Moolenaar2018-09-301-9/+0
| | | | | Problem: Unnecessary static function prototypes. Solution: Remove unnecessary prototypes.
* patch 8.1.0439: recursive use of getcmdline() still not protectedv8.1.0439Bram Moolenaar2018-09-301-9/+0
| | | | | | | Problem: Recursive use of getcmdline() still not protected. Solution: Instead of saving the command buffer when making a call which may cause recursiveness, save the buffer when actually being called recursively.
* patch 8.1.0362: cannot get the script line number when executing a functionv8.1.0362Bram Moolenaar2018-09-101-3/+5
| | | | | | Problem: Cannot get the script line number when executing a function. Solution: Store the line number besides the script ID. (Ozaki Kiichi, closes #3362) Also display the line number with ":verbose set".
* patch 8.1.0216: part of file not indented properlyv8.1.0216Bram Moolenaar2018-07-271-8/+8
| | | | | Problem: Part of file not indented properly. Solution: Adjust the indent. (Ken Takata)
* patch 8.1.0140: recording into a register has focus eventsv8.1.0140Bram Moolenaar2018-07-031-13/+29
| | | | | Problem: Recording into a register has focus events. (Michael Naumann) Solution: Don't record K_FOCUSGAINED and K_FOCUSLOST. (closes #3143)
* patch 8.1.0052: when mapping to <Nop> times out the next mapping is skippedv8.1.0052Bram Moolenaar2018-06-121-0/+5
| | | | | | Problem: When a mapping to <Nop> times out the next mapping is skipped. Solution: Reset "timedout" when waiting for a character. (Christian Brabandt, closes #2921)
* patch 8.1.0022: repeating put from expression register failsv8.1.0022Bram Moolenaar2018-05-231-0/+8
| | | | | | Problem: Repeating put from expression register fails. Solution: Re-evaluate the expression register. (Andy Massimino, closes #2945)
* 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.1845: various comment updates needed, missing white spacev8.0.1845Bram Moolenaar2018-05-151-1/+3
| | | | | Problem: Various comment updates needed, missing white space. Solution: Update comments, add white space.
* patch 8.0.1825: might use NULL pointer when out of memoryv8.0.1825Bram Moolenaar2018-05-121-2/+4
| | | | | Problem: Might use NULL pointer when out of memory. (Coverity) Solution: Handle NULL pointer better.
* patch 8.0.1786: no test for 'termwinkey'v8.0.1786Bram Moolenaar2018-05-011-3/+7
| | | | | | Problem: No test for 'termwinkey'. Solution: Add a test. Make feedkeys() handle terminal_loop() returning before characters are consumed.
* patch 8.0.1753: various warnings from a static analyserv8.0.1753Bram Moolenaar2018-04-241-5/+5
| | | | | | Problem: Various warnings from a static analyser Solution: Add type casts, remove unneeded conditions. (Christian Brabandt, closes #2770)
* patch 8.0.1735: flexible array member feature not supported by HP-UXv8.0.1735Bram Moolenaar2018-04-181-49/+39
| | | | | | Problem: Flexible array member feature not supported by HP-UX. (John Marriott) Solution: Do not use the flexible array member feature of C99.
* patch 8.0.1723: using one item array size declaration is misleadingv8.0.1723Bram Moolenaar2018-04-161-39/+49
| | | | | | | Problem: Using one item array size declaration is misleading. Solution: Instead of using "[1]" and actually using a larger array, use "[]". This is to verify that this C99 feature works for all compilers.
* patch 8.0.1564: too many #ifdefsv8.0.1564Bram Moolenaar2018-03-041-5/+1
| | | | | | 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.1546: using feedkeys() in a terminal may trigger mappingsv8.0.1546Bram Moolenaar2018-02-271-1/+1
| | | | | | Problem: Using feedkeys() in a terminal window may trigger mappings. (Charles Sheridan) Solution: Avoid triggering a mapping when peeking for a key.
* patch 8.0.1479: insert mode completion state is confusingv8.0.1479Bram Moolenaar2018-02-091-1/+2
| | | | | Problem: Insert mode completion state is confusing. Solution: Move ctrl_x_mode into edit.c. Add CTRL_X_NORMAL for zero.
* patch 8.0.1449: slow redrawing with DirectXv8.0.1449Bram Moolenaar2018-01-311-10/+4
| | | | | | Problem: Slow redrawing with DirectX. Solution: Avoid calling gui_mch_flush() unnecessarily, especially when updating the cursor. (Ken Takata, closes #2560)
* patch 8.0.1338: USE_IM_CONTROL is confusing and incompletev8.0.1338Bram Moolenaar2017-11-251-1/+1
| | | | | Problem: USE_IM_CONTROL is confusing and incomplete. Solution: Just use FEAT_MBYTE. Call 'imactivatefunc' also without GUI.
* 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-0/+8
| | | | | | 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.1236: Mac features are confusingv8.0.1236Bram Moolenaar2017-10-281-5/+6
| | | | | | Problem: Mac features are confusing. Solution: Make feature names more consistent, add "osxdarwin". Rename feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes #2178)
* patch 8.0.1136: W_WIDTH() is always the samev8.0.1136Bram Moolenaar2017-09-221-3/+3
| | | | | Problem: W_WIDTH() is always the same. Solution: Expand the macro.
* patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefsv8.0.1118Bram Moolenaar2017-09-161-2/+0
| | | | | | 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.1108: cannot specify mappings for the terminal windowv8.0.1108Bram Moolenaar2017-09-141-1/+7
| | | | | | Problem: Cannot specify mappings for the terminal window. Solution: Add the :tmap command and associated code. (Jacob Askeland, closes #2073)
* patch 8.0.1060: when imstyle is one, mapping <Left> breaks preeditingv8.0.1060Bram Moolenaar2017-09-051-1/+6
| | | | | | Problem: When imstyle is one, mapping <Left> breaks preediting. Solution: Pass though preediting key-events. (Yasuhiro Matsumoto, closes #2064, closes #2063)
* patch 8.0.1020: when a timer calls getchar(1) input is overwrittenv8.0.1020Bram Moolenaar2017-08-301-10/+15
| | | | | Problem: When a timer calls getchar(1) input is overwritten. Solution: Increment tb_change_cnt in inchar(). (closes #1940)
* patch 8.0.0671: hang when typing CTRL-C in confirm() in timerv8.0.0671Bram Moolenaar2017-06-241-0/+5
| | | | | | Problem: When a function invoked from a timer calls confirm() and the user types CTRL-C then Vim hangs. Solution: Reset typebuf_was_filled. (Ozaki Kiichi, closes #1791)
* patch 8.0.0628: cursor disappears after silent mappingv8.0.0628Bram Moolenaar2017-06-071-13/+5
| | | | | | Problem: Cursor disappears after silent mapping. (Ramel Eshed) Solution: Do restore the cursor when it was changed, but don't change it in the first place for a silent mapping.
* patch 8.0.0626: in the GUI the cursor may flickerv8.0.0626Bram Moolenaar2017-06-051-2/+10
| | | | | | Problem: In the GUI the cursor may flicker. Solution: Check the cmd_silent flag before updating the cursor shape. (Hirohito Higashi, closes #1637)
* patch 8.0.0551: the typeahead buffer is reallocated too oftenv8.0.0551Bram Moolenaar2017-04-081-3/+13
| | | | | Problem: The typeahead buffer is reallocated too often. Solution: Re-use the existing buffer if possible.
* patch 8.0.0548: saving the redo buffer only works one timev8.0.0548Bram Moolenaar2017-04-071-28/+16
| | | | | | | Problem: Saving the redo buffer only works one time, resulting in the "." command not working well for a function call inside another function call. (Ingo Karkat) Solution: Save the redo buffer at every user function call. (closes #1619)
* patch 8.0.0466: still macros that should be all-capsv8.0.0466Bram Moolenaar2017-03-161-3/+3
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps.
* patch 8.0.0452: some macros are in lower casev8.0.0452Bram Moolenaar2017-03-121-4/+4
| | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case.
* patch 8.0.0402: :map completion does not have <special>v8.0.0402Bram Moolenaar2017-03-021-1/+8
| | | | | Problem: :map completion does not have <special>. (Dominique Pelle) Solution: Recognize <special> in completion. Add a test.
* patch 8.0.0210: no support for bracketed pastev8.0.0210Bram Moolenaar2017-01-211-1/+7
| | | | | | Problem: Vim does not support bracketed paste, as implemented by xterm and other terminals. Solution: Add t_BE, t_BD, t_PS and t_PE.
* patch 8.0.0164: outdated and misplaced commentsv8.0.0164Bram Moolenaar2017-01-101-11/+10
| | | | | Problem: Outdated and misplaced comments. Solution: Fix the comments.
* patch 8.0.0074v8.0.0074Bram Moolenaar2016-11-101-4/+4
| | | | | | Problem: Cannot make Vim fail on an internal error. Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an internal error without mentioning where.
* patch 7.4.2293v7.4.2293Bram Moolenaar2016-08-291-1/+1
| | | | | Problem: Modelines in source code are inconsistant. Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
* patch 7.4.2263v7.4.2263Bram Moolenaar2016-08-261-1/+4
| | | | | | | Problem: :filter does not work for many commands. Can only get matching messages. Solution: Make :filter work for :command, :map, :list, :number and :print. Make ":filter!" show non-matching lines.
* patch 7.4.2223v7.4.2223Bram Moolenaar2016-08-171-16/+12
| | | | | Problem: Buffer overflow when using latin1 character with feedkeys(). Solution: Check for an illegal character. Add a test.
* patch 7.4.2222v7.4.2222Bram Moolenaar2016-08-161-7/+3
| | | | | | | Problem: Sourcing a script where a character has 0x80 as a second byte does not work. (Filipe L B Correia) Solution: Turn 0x80 into K_SPECIAL KS_SPECIAL KE_FILLER. (Christian Brabandt, closes #728) Add a test case.
* patch 7.4.1897v7.4.1897Bram Moolenaar2016-06-041-1/+1
| | | | | Problem: Various typos, long lines and style mistakes. Solution: Fix the typos, wrap lines, improve style.
* patch 7.4.1886v7.4.1886Bram Moolenaar2016-06-041-1/+2
| | | | | | | Problem: When waiting for a character is interrupted by receiving channel data and the first character of a mapping was typed, the mapping times out. (Ramel Eshed) Solution: When dealing with channel data don't return from mch_inchar().