Commit Graph

867 Commits

Author SHA1 Message Date
watiko
2eb09c826d vim-patch:7.4.878 #4258
Problem:    Coverity error for clearing only one byte of struct.
Solution:   Clear the whole struct. (Dominique Pelle)

69b67f7e77
2016-02-22 00:51:13 -05:00
Justin M. Keyes
2f98888db6 Merge pull request #4310 from jbradaric/vim-7.4.939
vim-patch:7.4.939
2016-02-22 00:48:54 -05:00
Justin M. Keyes
f08fd41282 Merge pull request #4250 from jbradaric/vim-7.4.895
vim-patch:7.4.895
2016-02-22 00:45:51 -05:00
Justin M. Keyes
4bd848f24f mksession: Restore buftype=terminal windows.
Closes #4311
2016-02-21 14:42:31 -05:00
Jurica Bradaric
82293b94c3 ex_docmd: Fix code style in ex_match 2016-02-21 11:21:45 +01:00
Jurica Bradaric
29b393e43a vim-patch:7.4.939
Problem:    Memory leak when encountering a syntax error.
Solution:   Free the memory. (Dominique Pelle)

9a7d58e42e
2016-02-21 11:15:08 +01:00
Jurica Bradaric
30b452b470 ex_docmd: Don't use pre-increment. 2016-02-16 07:20:47 +01:00
Jurica Bradaric
3b34c992bc vim-patch:7.4.895
Problem:    Custom command line completion does not work for a command
            containing digits.
Solution:   Skip over the digits. (suggested by Yasuhiro Matsumoto)

23d1b62746
2016-02-16 07:18:48 +01:00
Justin M. Keyes
baee9fe286 Merge pull request #4220 from watiko/vim-7.4.792
vim-patch:7.4.792
2016-02-15 03:55:23 -05:00
Justin M. Keyes
cc2dce45d0 startup: Avoid VimL global. Introduce TriState enum.
- `syntax_on` is documented. Rather than introduce a new undocumented
  VimL global `g:syntax_off`, use a module-local flag.
- Rename "maybe" functions to follow style guidelines (use standard
  module prefix)
2016-02-14 16:23:04 -05:00
Felipe Morales
6c9c08c370 startup: respect earlier :filetype and :syntax.
If user invokes :filetype or :syntax before startup defaults are
applied, don't clobber their choices.
2016-02-14 15:38:11 -05:00
Justin M. Keyes
da6299445a ex_docmd: rename force_enable_filetype().
It is no longer forcing anything.
2016-02-14 15:20:32 -05:00
Felipe Morales
9c2c24ec48 syntax: don't override user settings 2016-02-14 15:20:32 -05:00
Felipe Morales
50e129f5a7 defaults: Enable syntax and filetype plugins. 2016-02-14 15:20:31 -05:00
watiko
133ef7e465 vim-patch:7.4.792
Problem:    Can only conceal text by defining syntax items.
Solution:   Use matchadd() to define concealing. (Christian Brabandt)

6561d52ecb
2016-02-11 15:08:31 +09:00
watiko
6d57b48a53 vim-patch:7.4.737
Problem:    On MS-Windows vimgrep over arglist doesn't work (Issue 361)
Solution:   Only escape backslashes in ## expansion when it is not used as the
            path separator. (James McCoy)

6e8d3b0d41

---

Fix a lint error for the closing parenthesis.
NOLINT does not help to do this.
2016-02-10 16:19:33 +09:00
Justin M. Keyes
b9701c2a2b Merge #4152 'vim-patch:7.4.{798,800,805,810,811,814,815,816,817,820,825}'. 2016-02-09 01:58:54 -05:00
watiko
9b19335c6e vim-patch:7.4.693 #4172
Problem:    Session file is not correct when there are multiple tab pages.
Solution:   Reset the current window number for each tab page. (Jacob Niehus)

695baeefe1

---

see: "[patch] wincmd error during session restore"
     https://groups.google.com/d/msg/vim_dev/NykQ0UuOjXc/_MZi4sv9vp0J

What I did for testing:

```sh
mkdir /tmp/test_session
cd $_

function test_session() {
  $1 -u NONE -i NONE -N ~/.vimrc \
    -c 'wincmd s'      \
    -c 'wincmd v'      \
    -c 'wincmd T'      \
    -c 'normal 1gt'    \
    -c '2wincmd w'     \
    -c 'mks! test.vis' \
    -c 'qa'
  $1 -u NONE -i NONE -N -S test.vis
}

test_session vim
test_session nvim
test_session /path/to/your/neovim/repository/build/bin/nvim
```
2016-02-06 22:54:36 -05:00
Jurica Bradaric
f20818de31 vim-patch:7.4.811
Problem:    Invalid memory access when using "exe 'sc'".
Solution:   Avoid going over the end of the string. (Dominique Pelle)

204b93f958
2016-02-02 19:54:04 +01:00
Jurica Bradaric
cdc7250cd8 vim-patch:7.4.800
Problem:    Using freed memory when triggering CmdUndefined autocommands.
Solution:   Set pointer to NULL. (Dominique Pelle)

829aef1eb4
2016-02-02 18:34:31 +01:00
Jurica Bradaric
208f9dd09d vim-patch:7.4.740
Problem:    ":1quit" works like ":.quit". (Bohr Shaw)
Solution:   Don't exit Vim when a range is specified. (Christian Brabandt)

c7a0d32c83
2016-02-01 09:04:08 +01:00
Jurica Bradaric
a31f9161b0 vim-patch:7.4.709
Problem:    ":tabmove" does not work as documented.
Solution:   Make it work consistently.  Update documentation and add tests.
            (Hirohito Higashi)

40ce3a4e1f
2016-01-28 18:25:25 +01:00
Seth Jackson
a7ade5c832 misc: UNIX => Unix #4022
Although UNIX is a registered trademark of The Open Group, it doesn't
really matter whether we refer to these systems as UNIX, Unix, or
Unix-like. So, for consistency, refer to them collectively as Unix.

Related:
http://www.greens.org/about/unix.html
http://www.unixica.com/html/unixunix.html
2016-01-16 18:34:31 -05:00
Charles Joachim
879c668d14 fileio: Replace some event checking functions with one has_event 2016-01-11 08:45:19 -05:00
Florian Walch
7f99d210fd vim-patch:7.4.858
Problem:    It's a bit clumsy to execute a command on a list of matches.
Solution:   Add the ":ldo", ":lfdo", ":cdo" and ":cfdo" commands. (Yegappan
            Lakshmanan)

aa23b37942
2015-12-24 08:08:50 +01:00
Shougo Matsushita
cff1e9e0b6 vim-patch:7.4.617
Problem:    Wrong ":argdo" range does not cause an error.
Solution:   Reset "cmd" to NULL. (Marcin Szamotulski, Ingo Karkat)

c0a37b9db3
2015-11-29 16:23:49 +09: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
Michael Reed
3f7a465535 ex_cmds.lua: Use ex_ni directly
As can be seen in [1], the ifdefs are leftovers from Vim, where tons of
features are optional.  This is not the case in Nvim, so the macros are
of little use.  Besides, ex_ni is already used in a bunch of places,
just not consistently.

The ex_language macro was left untouched as the inclusion of
``:language'' actually is determined at compile time, unlike the other
commands which _always_ print "this command is not available in this
version".

[1]: https://github.com/vim/vim/blob/master/src/ex_docmd.c#L18-L497

Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
2015-11-15 18:34:18 -05:00
Michael Reed
c40dff6453 Remove :open command
From the documentation itself:

  :[range]o[pen]                 Works like |:visual|: end Ex mode.
                                 {Vi: start editing in open mode}
  ...

  Vim does not support open mode, since it's not really useful.  For
  those situations where ":open" would start open mode Vim will leave Ex
  mode, which allows executing the same commands, but updates the whole
  screen instead of only one line.

Part of the reason behind this is to make removing vi_diff.txt easier,
although it's also because :open is not too useful.

Helped-by: @fdinoff
Helped-by: @dsummersl
Helped-by: @mhinz
Helped-by: @justinmk
2015-11-07 14:33:10 -05:00
ZyX
d99941777d undo: Do some refactoring
Specifically refactor u_get_undo_file_name which will be modified to
automatically create undo directory and replace `char_u` with `char` in some of
the related functions.
2015-10-29 19:34:25 +03:00
Thiago de Arruda
dae006a942 main: Extract normal_check from main_loop
The new function contains logic that must be executed after handling input in
normal mode and also before the first main loop iteration. Also rename
`main_loop` to `normal_enter` and move it to normal.c
2015-10-26 10:52:01 -03:00
ZyX
8dafa533db shada: Translate errors and add error codes
Notes:
- E136 code greatly changed its meaning: now it is write error and not read
  error.
- E195 was removed because shada_read_everything will already do all the
  necessary error reporting.
- E886 can be reported by both :rshada and :wshada, but :rshada comes first and
  AFAIR it is the only error which is not E575 and can be reported by :rshada.
2015-10-08 22:00:14 +03:00
ZyX
8663983cc4 Deprecate &viminfo and :[rw]v, add &shada and :[rw]sh 2015-10-08 22:00:07 +03:00
ZyX
9cf9c4a586 Replace references to viminfo in various places 2015-10-08 22:00:06 +03:00
ZyX
244dbe3a77 viminfo: First version of ShaDa file dumping
What works:

1. ShaDa file dumping: header, registers, jump list, history, search patterns,
   substitute strings, variables.
2. ShaDa file reading: registers, global marks, variables.

Most was not tested.

TODO:

1. Merging.
2. Reading history, local marks, jump and buffer lists.
3. Documentation update.
4. Converting some data from &encoding.
5. Safer variant of dumping viminfo (dump to temporary file then rename).
6. Removing old viminfo code (currently masked with `#if 0` in a ShaDa file for
   reference).
2015-10-08 21:59:51 +03:00
Thiago de Arruda
2182cd6081 ex_docmd: Fix terminal mode check condition for ex_normal
Using the `curbuf->terminal` condition alone is wrong since it does not
necessarily mean nvim is in terminal mode. It needs to be used with
`State & TERM_FOCUS` because the current buffer could have changed without
`terminal_enter` exiting.

Close #3403
2015-10-01 15:22:49 -03:00
Thiago de Arruda
1b1716477c terminal: Don't enter terminal mode from :normal
Ref: https://github.com/junegunn/fzf.vim/issues/8#issuecomment-139209765
2015-09-18 14:35:26 -03:00
Felipe Morales
acdac914d5 clipboard: avoid clipboard during :global. #2809
This is equivalent to patches 7.4.396, 7.4.445 and 7.4.598.

vim-patch:7.4.396

Problem:    When 'clipboard' is "unnamed", :g/pat/d is very slow.
(Praful)
Solution:   Only set the clipboard after the last delete. (Christian
Brabandt)

1f285eb49a

vim-patch:7.4.445

Problem:    Clipboard may be cleared on startup.
Solution:   Set clip_did_set_selection to -1 during startup. (Christian
	    Brabandt)

1a19d37d90

vim-patch:7.4.598

Problem:    ":tabdo windo echo 'hi'" causes "* register not to be
changed.
	    (Salman Halim)
Solution:   Change how clip_did_set_selection is used and add
	    clipboard_needs_update and global_change_count.  (Christian
	    Brabandt)

af6a579263

Co-Author: @bfredl
2015-08-30 23:40:12 -04:00
ZyX
1206ac953f os/fs: Move mkdir_recurse from eval.c to os/fs.c 2015-07-26 02:34:32 +03:00
ZyX
afd3e69e9f ex_docmd: Make E739 message contain strerror() output 2015-07-26 02:34:32 +03:00
Michael Reed
4455fc3f05 Remove ':Print' command #3049
There's no way this isn't some long-running joke:

  "Just as ':print'.  Was apparently added to Vi for
  people that keep the shift key pressed too long..."
  Note: A user command can overrule this command.

Regarding ':X': the command has been removed for a while, but the
documentation must have been missed, so remove it here.

Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
Helped-by: @jusga
2015-07-20 20:43:09 -04:00
Michael Reed
0661411bba Remove POSIX 'cpoptions': '.' 2015-07-19 15:14:22 -04:00
Thiago de Arruda
ac2bd02561 rstream/wstream: Unify structures and simplify API
- Simplify RStream/WStream API and make it more consistent with libuv.
- Move into the event loop layer(event subdirectory)
- Remove uv_helpers module.
- Simplify job/process internal modules/API.
- Unify RStream and WStream into a single structure. This is necessary because
  libuv streams can be readable and writable at the same time(and because the
  uv_helpers.c hack to associate multiple streams with libuv handle was removed)
- Make struct definition public, allowing more flexible/simple memory
  management by users of the module.
- Adapt channel/job modules to cope with the changes.
2015-07-17 00:19:55 -03:00
Marco Hinz
1e03165074 Remove :tearoff #3007
This also removes the 't' flag from 'guioptions'.

Side effect: :term[inal] -> :te[rminal]

Closes #3003.
2015-07-15 22:03:35 -04:00
Ismail Badawi
34a5efd7a9 Enable -Wconversion: menu.c #2885 2015-06-25 01:28:02 -04:00
Felipe Morales
34fdb11e53 ex_docmd.c: :edit is a no-op in terminal buffers #2822
Closes #2779
2015-06-14 13:59:01 -04:00
David Bürgin
32837cc7df 'cpoptions': Remove "-" flag #2655 2015-05-21 01:31:30 -04:00
Michael Reed
3c5864772f Remove char_u: message:smsg() 2015-05-13 15:29:50 -04:00