| Commit message (Collapse) | Author | Age |
|
|
|
| |
wchar_t has better cross-platform support and seems to fix an issue
on MinGW when building with `-std=c99`.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Unnecessary if statement.
Solution: Remove the statement. Fix "it's" vs "its" mistakes. (Dominique
Pelle, closes vim/vim#1568)
https://github.com/vim/vim/commit/aab93b12cb54fbe5efe9e8f6fde1c46802a3031e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before this change, -E/-Es without `-u NONE` reads stdin as Ex commands.
It should always read stdin as text (into buffer 1), like this:
echo foo | nvim -Es +'%p'
foo
echo foo | nvim -Es -u NORC +'%p'
foo
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This changes Ex mode (Q, -e) to work like Vim's "improved Ex mode"
(gQ, -E). That brings some small behavior differences, but should not
impact most Ex scripts (unless, for example, they depend on mappings
being disabled--but that can be solved for -e by skipping user config).
Before this change:
* the screen test hangs.
After this change:
* Q acts like gQ.
* -e/-es differs from -E/-Es only in its treatment of stdin.
This moves towards potentially removing getexmodeline().
(HINT: That does NOT mean "removing Ex mode", it means removing the
Vi-compatible Ex mode, which differs from Vim's "improved Ex mode" only
in some minor details (e.g. mappings are disabled).)
ref #1089 :-)~
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: For some people the hint about quitting is not sufficient.
Solution: Put <Enter> separately. Also use ":qa!" to get out even when
there are changes.
https://github.com/vim/vim/commit/28a8193e3113f676f89fb6312b099d849df881d3
|
| |
| |
| |
| |
| |
| |
| | |
Problem: shellescape() always escapes a newline, which does not work with
some shells. (Harm te Hennepe)
Solution: Only escape a newline when the "special" argument is non-zero.
(Christian Brabandt, closes vim/vim#1590)
https://github.com/vim/vim/commit/206155280def51160a9d81d983aed639015ffb44
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix PVS warnings:
fileio.c:7293 Medium V547 Expression is always true.
fileio.c:7351 Medium V547 Expression 'event == 100' is always false.
event_name2nr returns event_T, so PVS infers that nothing outside of
that range could possibly be returned.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: gF test fails still on MS-Windows.
Solution: Use : before the line number and remove it from 'isfname'.
https://github.com/vim/vim/commit/712598f210570627534246cb5dcbb4f213367997
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: gF test fails on MS-Windows.
Solution: Use @ instead of : before the line number
https://github.com/vim/vim/commit/d7aca7a71c7254501c08f04db1798df479df0e89
|
| |/
| |
| |
| |
| |
| |
| | |
Problem: When gF fails to edit the file the cursor still moves to the found
line number.
Solution: Check the return value of do_ecmd(). (Michael Hwang)
https://github.com/vim/vim/commit/2a79ed293c077ba791db962f0e121cf97ba4f7a7
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: Edit test may fail on some systems.
Solution: If creating a directory with a very long path fails, bail out.
https://github.com/vim/vim/commit/15ecbd6f3d39ff04862999a577962ef9369a9e53
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Test_edit causes older xfce4-terminal to close. (Dominique Pelle)
Solution: Reduce number of columns to 2000. Try to restore the window
position.
https://github.com/vim/vim/commit/ba6ec182973af726ce9b7b7eb3753fc3a7ae7d1b
|
| |
| |
| |
| |
| |
| | |
Problem: Test with long directory name fails on Mac.
Solution: Skip the test on Mac systems.
https://github.com/vim/vim/commit/c77d6757471fa207520586bbdbc1b30af84cf5c8
|
| |
| |
| |
| |
| |
| | |
Problem: Test with long directory name fails on non-unix systems.
Solution: Skip the test on non-unix systems.
https://github.com/vim/vim/commit/9b81079ddd839a666682f6bdbc24890bf4d1a42c
|
|/
|
|
|
|
|
| |
Problem: Buffer overflow when 'columns' is very big. (Nikolai Pavlov)
Solution: Correctly compute where to truncate. Fix translation.
(closes vim/vim#1600)
https://github.com/vim/vim/commit/658a3a2caf5852d071b6b1be92d9d6614a6208dc
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: Warning for uninitialized variable. (John Marriott)
Solution: Initialize "indent".
https://github.com/vim/vim/commit/97db5541a65e4614f8753af27996c204946061a9
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Using freed memory when resetting 'indentexpr' while evaluating
it. (Dominique Pelle)
Solution: Make a copy of 'indentexpr'.
https://github.com/vim/vim/commit/a701b3b6f0f06ac0c9fcc75c6c34a1258fc3b1a2
|
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Crash when complete() is called after complete_add() in
'completefunc'. (Lifepillar)
Solution: Bail out if compl_pattern is NULL. (closes vim/vim#1668)
Also avoid using freed memory.
https://github.com/vim/vim/commit/4475b623960671898dac6a72b13a8d140402afa6
|
|\ \ \
| |_|/
|/| | |
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| | |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
|
| |
| |
| |
| |
| |
| | |
Patch-by: oni-link <knil.ino@gmail.com>
ref: https://github.com/neovim/neovim/pull/6236#discussion_r195113807
|
| | |
|
| |
| |
| |
| |
| | |
This option allows configuring what character is shown on the empty
lines at the end of a buffer, previously hardcoded to ‘~’
|
|\ \
| | |
| | | |
Represent Screen state as UTF-8
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Store text in ScreenLines as UTF-8, so it can be sent as-is to the UI
layer. `utfc_char2bytes(off,buf)` is removed, as `ScreenLines[off]` now
already contains this representation.
To recover the codepoints that the screen arrays previously contained, use
utfc_ptr2char (or utf_ptr2char to ignore composing chars).
NB: This commit does NOT change how screen.c processes incoming UTF-8 data
from buffers, cmdline, messages etc. Any algorithm that operates on UCS-4
(like arabic shaping, treatment of non-printable chars)
is left unchanged for now.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
| |
doc: termios defaults. ref #6992
doc: :help shell-powershell
doc: provider: Python minimum version is 2.7, 3.4
doc: remove :!start special-case. #5844
doc: mention #7917 change which accepts empty Array for Dictionary parameter
doc: <Cmd> pseudokey
doc: lmap change #5658
doc: -s, -es
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes 2 failing tests in startup_spec.lua.
The Windows-only `--literal` option complicates support of "stdin-as-text
+ file-args" (#7679). Could work around it, but it's not worth
the trouble:
- users have a reasonable (and englightening) alternative: nvim +"n *"
- "always literal" is more consistent/predictable
- avoids platform-specific special-case
Unrelated changes:
- Replace fileno(stdxx) with STDXX_FILENO for consistency (not motivated
by any observed technical reason).
|
| | |
|
| |
| |
| |
| |
| |
| | |
silent-mode (-es/-Es) has been broken for years. The workaround up to
now was to include --headless. But --headless is not equivalent because
it prints all messages, not the limited subset defined by silent-mode.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
silent-mode (AKA batch-mode, -es/-Es) by definition should not behave
like a UI.
There are still some places that check `full_screen` to decide behavior,
e.g. msg_start(). Future: maybe eliminate `full_screen`, check
`ui_active()` instead?
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Special-case for -E/-Es (as opposed to -e/-es).
-es/-Es is the only mode that really allows N/Vim to work as a batch
script engine. Adding a new flag (say `-x`) would involve a lot of
churn: -es/-Es is implemented by checking `exmode_active` in numerous
places.
This commit does not change -es because some scripts use it. But scripts
are unlikely to use -Es because it is not functionally different from
-es.
Also, both -es and -Es were broken in Nvim for years and no one
mentioned it...
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Treat stdin as text by default (so the "-" file is not needed):
echo foo | nvim
It works with file args (implemented in next commit), too:
echo foo | nvim file1.txt file2.txt
Why? Because:
- Execution of input is (1) almost always unintentional/confusing,
and (2) potentially destructive.
- Avoids the need for time-delayed warning. #7659
- The _common_ case is to open text in a buffer, not send commands.
Note:
- Not for Ex-mode (-es) because it is used by scripts. But maybe `-Es`?
- Not for --headless, because stdio may be a protocol stream and may be
used for any purpose by stdioopen().
To treat stdin as Normal-mode commands, use `-s -` instead:
echo ifoo | nvim -s -
Other alternatives:
- Replay a register. E.g. the following mostly works, except @q aborts
on any "beep" (e.g. if the cursor can't move).
nvim -c '%d q|norm @q' -
- Future: Let `:%source` work with unsaved buffer contents?
closes #2087
closes #7659
|
| |
| |
| |
| |
| |
| |
| |
| | |
This code was essentially dead because this condition:
(!parmp->err_isatty && (!parmp->output_isatty || !parmp->input_isatty))
is almost never true.
ref #7659
|
| | |
|
|\ \ |
|