Commit Graph

229 Commits

Author SHA1 Message Date
Michael Ennen
d2be11fbf2 vim-patch:7.4.1735
Problem:    It is not possible to only see part of the message history.  It is
            not possible to clear messages.
Solution:   Add a count to ":messages" and a clear argument. (Yasuhiro
            Matsumoto)

451f849fd6
2016-11-29 16:32:43 -07:00
Justin M. Keyes
7be113d795 shell_write_cb: Schedule error message. (#5670)
Closes #5558
2016-11-26 13:08:42 +01:00
Justin M. Keyes
df072c3b2b refactor: eliminate misc2.c
move `call_shell` to misc1.c
Move some fns to state.c
Move some fns to option.c
Move some fns to memline.c
Move `vim_chdir*` fns to file_search.c
Move some fns to new module, bytes.c
Move some fns to fileio.c
2016-09-13 16:20:09 +02:00
Anmol Sethi
a8e973dea6 ex_messages: remove 'Messages maintainer' (#5160) 2016-08-04 21:01:32 -04:00
Justin M. Keyes
aa2c439940 eval.c: rename capture() to execute() (#5132) 2016-07-31 13:23:29 -04:00
Justin M. Keyes
8a4e5b4bc2 Merge #4697 'capture() function'. 2016-06-20 00:55:41 -04:00
Charles Joachim
c2a1821611 ops.c: enable -Wconversion warning 2016-05-30 12:05:08 -04:00
Shougo Matsushita
41c0dfd545 Port capture() function
https://groups.google.com/forum/#!msg/vim_dev/H3Z3ChSUh_4/beZs6KzYdBsJ
2016-05-27 10:33:44 +09:00
Björn Linse
5cc87d4dab cmdline: Redraw the cmdline after processing events
vim-patch:7.4.1603

TODO(bfredl): if we allow events in HITRETURN and ASKMORE states,
we need to add the necessary redraws as well.
2016-05-24 22:11:37 +02:00
Justin M. Keyes
4e101310d5 msg_puts_printf: remove char_u 2016-05-17 00:28:40 -04:00
Justin M. Keyes
c7f02f4f8d Merge pull request #4639 from brcolow/vim-7.4.1347
vim-patch: 7.4.1347
2016-05-10 01:22:25 -04:00
ZyX
cf4e1fb0f4 *: Fix new linter errors
Originally there were 128 new errors, so I thought this is a good idea to fix 
all of them. Of course, this commit also fixes many suppressed errors.
2016-05-01 20:35:51 +03:00
Michael Ennen
9cf91a8691 vim-patch: 7.4.1347
Problem:    When there is any error Vim will use a non-zero exit code.
Solution:   When using ":silent!" do not set the exit code. (Yasuhiro
            Matsumoto)

8b778d5599
2016-04-24 12:52:29 -07:00
ZyX
494b1c9bee *: Make set_vim_var_\* functions have proper argument types 2016-04-18 02:48:20 +03:00
ZyX
82f249f829 message: Remove useless emsg* functions, leaving only emsgf 2016-04-18 02:48:20 +03:00
ZyX
eb806c9620 eval/decode: Make sure that error messages do not cause overflow 2016-04-18 02:48:20 +03:00
ZyX
f0bd4a1494 eval/encode: Fix invalid UTF-8 strings handling:
1. Do not allow reading past buffer end when creating error messages.
2. Fix surrogate pairs range, avoid magic constants.
2016-04-18 02:47:13 +03:00
Jurica Bradaric
3915ac2409 vim-patch:7.4.722
Problem:    0x202f is not recognized as a non-breaking space character.
Solution:   Add 0x202f to the list. (Christian Brabandt)

73284b973a
2016-01-24 09:55:40 +01:00
Jason Schulz
f82e982bda Fix lint issues 2016-01-15 20:32:00 -08:00
Jason Schulz
7ad3f077dc Add support for binary numbers 2016-01-15 18:21:06 -08:00
Michael Reed
53ee6425c8 src/*: Remove VIM - Vi improved ... header
Regarding the individual items in the header:

`Vim - Vi improved	by Bram Moolenar`
  Bram Moolenar is already mentioned throughout the documentation, as
  well as the intro screen.

`:help uganda`
  It's already shown to all users who don't use `shortmess+=I` upon
  starting nvim, and is already placed prominently in help.txt, i.e.,
  `:help` run with no arguments.

`:help credits`
  Already mentioned near the top of help.txt.

`README.md`
  Already mentioned in develop.txt.
2015-11-27 16:25:10 -05:00
Rui Abreu Ferreira
4f24b9e06f Remove unnecessary includes for errno.h 2015-11-25 16:38:33 -05:00
Michael Reed
af5483089e src: README.txt -> README.md
The former no longer exists in this repo; see the top of
src/nvim/README.md.
2015-11-23 21:38:08 -05:00
Johan Klokkhammer Helsing
3bb2662669 vim-patch:7.4.793
Problem:    Can't specify when not to ring the bell.
Solution:   Add the 'belloff' option. (Christian Brabandt)

165bc69d1b
2015-10-18 01:58:18 +02:00
Hettomei
1b7dcb2f70 Macro cleanup: FEAT_GUI and ALWAYS_USE_GUI 2015-07-17 21:40:37 -04:00
Scott Prager
412d246be7 getenv: return NULL if empty #2574
Making an environment variable empty can be a way of unsetting it for
platforms that don't support unsetenv(). In most cases, we treat empty
variables as having been unset. For all others, use os_env_exists().
2015-05-29 13:12:12 -04:00
Michael Reed
62bcd98ae3 Remove char_u: message:smsg_attr() 2015-05-13 15:29:50 -04:00
Michael Reed
3c5864772f Remove char_u: message:smsg() 2015-05-13 15:29:50 -04:00
Eliseo Martínez
2fec6b7d4e Fix warnings: Support '%zu' in vim_snprintf(): Add support. 2015-05-01 17:02:40 +02:00
Eliseo Martínez
b158fbb280 Support '%zu' in vim_snprintf(): Cleanup.
Some style changes and minimal refactoring, to tidy up code.
No behavioural changes intended.
2015-05-01 17:02:05 +02:00
David Bürgin
2632dc5890 vim-patch:7.4.712
Problem:    Missing change in another file.
Solution:   Also change message.c

https://github.com/vim/vim/releases/tag/v7-4-712
2015-04-27 04:58:37 -04:00
David Bürgin
44c2db65db vim-patch:7.4.553 #2513
Problem:    Various small issues.
Solution:   Fix those issues.

https://github.com/vim/vim/releases/tag/v7-4-553
2015-04-25 17:15:10 -04:00
Felipe Oliveira Carvalho
caabcae0b7 Replace VIM_ISDIGIT() and vim_isdigit() with ascii_isdigit() defined in ascii.h 2015-04-24 20:37:13 -03:00
Felipe Oliveira Carvalho
93bf201119 Replace vim_iswhite with ascii_iswhite() defined in ascii.h 2015-04-24 20:37:13 -03:00
Thiago de Arruda
34c48aaf12 memory: Add free wrapper and refactor project to use it
We already use wrappers for allocation, the new `xfree` function is the
equivalent for deallocation and provides a way to fully replace the malloc
implementation used by Neovim.
2015-04-13 08:22:44 -03:00
Michael Reed
8f6ecc4089 misc2.c: Move emsg* functions to message.c #2152
Clean up said functions and some outdated comments while we're at it.
2015-03-19 18:33:39 -04:00
Thiago de Arruda
c546875daf ui: Replace cursor_{on,off} by busy_{stop,start}
Switching cursor off is only necessary in two occasions:

- When redrawing to avoid terminal flickering
- When the editor is busy

The first can now be handled by the TUI, so most calls to ui_cursor_off can be
removed from the core.

So, before this commit it was only necessary to switch the cursor off to notify
the user that nvim was running some long operation. Now the cursor_{on,off}
functions have been replaced by busy_{stop,start} which can be handled in a
UI-specific way(turning the cursor off or showing a busy indicator, for
example).

To make things even more simpler, nvim is always busy except when waiting for
user input or other asynchronous events: It automatically switches to a non-busy
state when the event loop is about to be entered for more than 100 milliseconds.

`ui_busy_start` can be called when its not desired to change the busy state in
the event loop (As its now done by functions that perform blocking shell
invocations).
2015-03-15 10:30:59 -03:00
Michael Reed
4d7b31fd61 Macro cleanup: USE_ON_FLY_SCROLL 2015-03-05 19:03:36 -05:00
Eliseo Martínez
36092f3a0c Fix warnings: message.c: copy_hotkeys_and_msg: Garbage value: FP. #2062
Problem    : Branch condition evaluates to a garbage value @ 2868.
Diagnostic : False positive.
Rationale  : Array has_hotkey, declared at 2812, is initialized by
             console_dialog_alloc (only the needed number of elements).
             That same number of elements is used by
             copy_hotkeys_and_msg.
             Suggested path error is impossible, because it involves a
             different number of elements in those functions.
Resolution : Above condition is cumbersome to prove through assertions.
             Thus, we prefer to just initialize the array to all-false
             at declaration point before calling console_dialog_alloc.
2015-02-26 09:04:36 +01:00
Thiago de Arruda
3baba1e7bc refactor: Remove term modules and termcap options
- Removed term.c, term.h and term_defs.h
- Tests for T_* values were removed. screen.c was simplified as a
  consequence(the best strategy for drawing is implemented in the UI layer)
- Redraw functions now call ui.c functions directly. Updates are flushed with
  `ui_flush()`
- Removed all termcap options(they now return empty strings for compatibility)
- &term/&ttybuiltin options return a constant value(nvim)
- &t_Co is still available, but it mirrors t_colors directly
- Remove cursor tracking from screen.c and the `screen_start` function. Now the
  UI is expected to maintain cursor state across any call, and reset it when
  resized.
- Remove unused code
2015-02-21 05:08:21 -03:00
Eliseo Martínez
24fa25a57f coverity/13683: Out-of-bounds access: RI.
Problem    : Out-of-bounds access @ 3730.
Diagnostic : Real issue.
Rationale  : str is constructed step by step, str_l growing each time.
             str_m is the maximum length of str. So, at every step,
             avail is computed to see if the piece to be added fits in.
             If not, piece is truncated to a max of `avail`, so that str
             stays in bounds. Such blocks where pieces are added are of
             the form `if (str_l < str_m)`. It then follows that once
             one of those pieces exhausts available space on str, no
             other such block should be entered. Formally:

               str_l < strl_m && avail = str_m - str_l && x >= avail
                                    -->
                             str_l + x >= str_m

             Now, suggested error path successively enters blocks where
             str is exhausted. We're not sure if coverity just fails to
             follow above implications, or, on the contrary, it's aware
             of them, but it's signaling the more complex possibility of
             implications not being fulfilled because of possible
             arithmetic overflows. We opt then to assume this last case,
             as the possibility is in fact there.
Resolution : Refactor code so that tracked condition doesn't depend on
             arithmetic implications. Check for overflow.
2015-02-20 17:34:07 +01:00
Thiago de Arruda
e0e41b30c6 ui: Remove/adapt some old code for a big UI refactor
- Remove abstract_ui global, now it is always active
- Remove some terminal handling code
- Remove unused functions
- Remove HAVE_TGETENT/TERMINFO/TERMIOS/IOCTL #ifdefs
- Remove tgetent/terminfo from version.c
- Remove curses/terminfo dependencies
- Only start/stop termcap when starting/exiting the program
- msg_use_printf will return true if there are no attached UIs(
  messages will be written to stdout)
- Remove `ex_winpos`(implement `:winpos` with `ex_ni`)
2015-02-16 23:17:39 -03:00
Eliseo Martínez
8d6778a4d1 Remove nonnullret deadcode: home_replace_save. 2015-01-27 01:33:31 +01:00
Michael Reed
d2e7cce560 Macro cleanup: Miscellaneous
These were found with -Wunused-macros. There are many more macros which
triggered that warning, but they were primarily part of larger sets of
macros so leave them alone.
2015-01-14 22:23:16 -05:00
Joel Teichroeb
d0dcf56338 Ignore compatible mode 2014-12-13 11:43:48 -08:00
Michael Reed
33b459b672 docs: Remove VAX remnants 2014-12-09 19:25:03 -05:00
Eliseo Martínez
734ac625bb Fix warnings: message.c: msg_attr_keep(): Np dereference: FP.
Problem    : Dereference of null pointer @ 179.
Diagnostic : False positive.
Rationale  : Error occurs if `s` paramater is null, which should not
             happen.
Resolution : Declare parameter as non null.
2014-12-06 17:40:12 +01:00
Thiago de Arruda
bf6bb27e79 ui: Remove redundant ui.h includes
Also move read_error_exit to os/input.c
2014-11-27 15:00:30 -03:00
Thiago de Arruda
a3534138a8 ui: Extract mouse.c/mouse.h 2014-11-27 14:48:30 -03:00
Thiago de Arruda
1865b8c1c1 ui: Remove ui_delay, ui_breakcheck and ui_set_shellsize
These functions only used to call another os_* function, so remove them and
replace all occurences in the project.
2014-11-27 14:27:18 -03:00