Commit Graph

56 Commits

Author SHA1 Message Date
yuripv
d5167c2d0d Revert r362148.
Breaks UTF-8 input for new or having only 7bit characters present files.

Reported by:	glebius
2020-06-22 22:59:03 +00:00
yuripv
430cfd638e nvi: fallback to ISO8859-1 as last resort
Current logic of using user's locale encoding that is UTF-8 doesn't make
much sense if we already failed the looks_utf8() check and skipped
encoding set using "fileencoding" as being UTF-8 as well; fallback to
ISO8859-1 in that case.

Reviewed by:	Zhihao Yuan <lichray@gmail.com>
Differential Revision:	https://reviews.freebsd.org/D24919
2020-06-13 14:11:02 +00:00
0mp
3c2c23b494 vi.1: Fix a typo
Reviewed by:	bcr
Approved by:	bcr (mentor)
Differential Revision:	https://reviews.freebsd.org/D22734
2019-12-09 17:58:22 +00:00
yuripv
85096f812f vi: fix UTF-8 detection.
PR:		202290
Submitted by:	lampa@fit.vutbr.cz
Reviewed by:	bapt
Approved by:	kib (mentor, implicit)
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D17950
2018-11-26 15:33:55 +00:00
emaste
e6b659c541 nvi: remove superfluous space before ^\
This fixes alignment in vi's 'viusage' command and has been fixed
upstream and in OpenBSD.

Submitted by:	Raf Czlonka (github:rjc)
MFC after:	1 week
Pull Request:	https://github.com/freebsd/freebsd/pull/122
2018-11-09 17:39:57 +00:00
bapt
c7f08411e0 Update nvi to 2.1.3 which fixes the data corruption when locale conversion
failed
2015-04-10 17:50:28 +00:00
peter
88f067f6f4 Vendor import nvi-2.1.2-c80f493b038 a multikey mapping fix
PR:		bin/182463
2013-12-08 00:08:03 +00:00
peter
aa72ff78d3 Merge nvi-2.1.1 -> 2.1.2 2013-11-11 16:52:02 +00:00
peter
5f2a1d6536 Update nvi-1.79 to 2.1.1-4334a8297f
This is the gsoc-2011 project to clean up and backport multibyte support
from other nvi forks in a form we can use.

USE_WIDECHAR is on unless building for the rescue crunchgen. This should
allow editing in the native locale encoding.

USE_ICONV depends on make.conf having 'WITH_ICONV=YES' for now.  This
adds the ability to do things like edit a KOI8-R file while having $LANG
set to (say) en_US.UTF-8.  iconv is used to transcode the characters for
display.

Other points:
* It uses gencat and catopen/etc instead of homegrown msg catalog stuff.
* A lot of stuff has been trimmed out, eg: the perl and tcl bindings which
  we could never use in base anyway.
* It uses ncursesw when in widechar mode.  This could be interesting.

GSoC info: http://www.google-melange.com/gsoc/proposal/review/google/gsoc2011/zy/1
Repo at: https://github.com/lichray/nvi2

Obtained from:  Zhihao Yuan <lichray@gmail.com>
2013-08-11 20:03:12 +00:00
peter
75700a8c06 Post-cvs2svn flatten pass. 2013-08-11 08:38:10 +00:00
jh
c5c3f4f392 Rename O_DIRECTORY to O_TMP_DIRECTORY to avoid shadowing the fcntl.h
O_DIRECTORY flag.

PR:		bin/173924
Obtained from:	git://repo.or.cz/nvi.git
2013-05-15 18:41:49 +00:00
dim
b08c760574 Fix two instances of undefined behaviour in contrib/nvi.
Found by:	clang ToT
Obtained from:	NetBSD
Reviewed by:	jh
MFC after:	3 days
2013-02-16 12:48:06 +00:00
jh
742015e59f Fixes from NetBSD for nvi visual mode:
- Fix handling of ^@ when reading an ex command. Don't try to replay
  the previous input.
- Fix handling of ^C in insert mode and when reading an ex command.
  Repeating an interrupted input could cause a crash and interrupting
  ex command input could cause a file corruption.
- Fix a bug which causes crashes in file name completion when a file
  name is longer than the screen width.
- When an error occurs in v_txt(), leave the input mode.

PR:		bin/21089, bin/136393
Obtained from:	NetBSD
2010-05-28 09:30:13 +00:00
jh
65161e63df Fix misspelling of "substitution".
PR:		bin/130874
Submitted by:	Yoshihiro Ota
2010-05-28 09:26:53 +00:00
rafan
f604f00277 - Sort the headers per style(9)
Reminded by:	yar
Approved by:	delphij (mentor, implicit)
2007-06-06 11:14:30 +00:00
rafan
ab467b3430 - Fix crash with ncurses on FreeBSD/amd64 CURRENT by including missing
header <term.h>, which is required by both tputs() and tgoto().

  Without this header, nvi crashes with the call to tputs() at line 114.
  This is because the first argument of tputs() is a pointer, and the
  returned pointer from tgoto() is casted to an integer by compiler.

  For some reasons, this only crashes on amd64+CURRENT. On 6.x system,
  this does not happen.

PR:		101248
Reported by:	yar, infofarmer, Roland Smith
Tested by:	infofarmer, delphij, rafan
Approved by:	delphij (mentor)
2007-06-06 02:23:03 +00:00
cperciva
afe2192571 Remove the dates from these files. They serve no purpose and result in
these files spuriously changing each time they are built.

Also, add $FreeBSD$ tags, because cvs is unhappy otherwise.
2005-08-17 15:56:04 +00:00
ache
a84cb5933b Remove ru_SU, we don't need it in favour to ru_RU
Submitted by:   ru
2003-06-23 13:21:15 +00:00
ache
4c7a9b877a Copy ru_SU spelling fixes to ru_RU
Submitted by:   ru
2003-06-23 13:18:42 +00:00
jdp
5e6a957383 Fixes for the Russian translations of the messages.
PR:		bin/48035, bin/48036
Submitted by:	Sergey A.Osokin <osa@FreeBSD.org.ru>
Reviewed by:	ache
MFC after:	4 weeks
2003-03-08 22:45:12 +00:00
sheldonh
226e885eda Merge rev 1.1.1.3 from vendor branch: fix refresh / warning deadlock 2002-01-31 14:23:49 +00:00
sheldonh
3102470d94 Fix deadlock between warning display and refresh engines. This fix
is taken from nvi-1.51.5.

PR:		bin/3170
Reported by:	fenner
Obtained from:	skimo@kotnet.org

MFC after:	1 month
2002-01-31 14:20:50 +00:00
sheldonh
02a885aab7 Merge rev 1.1.1.2 from the vendor branch: fix leftright scrolling for
long lines
2002-01-31 13:45:31 +00:00
sheldonh
b9c3686240 Add $FreeBSD$ CVS Id tag so that I can merge rev 1.1.1.2 from the
vendor branch.  This file was taken off the vendor branch in 1998,
before we started enforcing the presence of CVS Id tags. :-(
2002-01-31 13:44:36 +00:00
sheldonh
6122421847 Fix core dump in left-right screen scrolling for long lines.
The nvi maintainer expects this patch to be included in the upcoming
nvi-1.81.6 unless a better fix presents itself.

The MFC reminder below should be taken as a cue to MFC rev 1.1.1.2
of vs_relative.c as well.

PR:		bin/26869
Reported by:	Alex Semenyaka <alexs@snark.ratmir.ru>
Obtained from:	skimo@kotnet.org (via "Alexey V. Neyman" <alex.neyman@auriga.ru>)
MFC after:	1 month
2002-01-31 13:28:37 +00:00
sheldonh
b1c162a5bd This commit was generated by cvs2svn to compensate for changes in r90019,
which included commits to RCS files with non-trunk default branches.
2002-01-31 13:28:37 +00:00
sheldonh
fa30b82df1 Import patch from vendor (taken from nvi-1.81.5) that fixes problematic
interaction between the leftright and number options.

PR:		bin/23912
Reported by:	"Stephen D. Spencer" <gladiatr@boneyard.lawrence.ks.us>
Obtained from:	skimo@kotnet.org
2002-01-07 14:26:12 +00:00
sheldonh
889a3dbc70 This commit was generated by cvs2svn to compensate for changes in r89010,
which included commits to RCS files with non-trunk default branches.
2002-01-07 14:26:12 +00:00
rwatson
9b2a87cb18 o nvi failed to correctly handle EINTR returned from tcsetattr(), exiting
instead of recovering, which happens in particular during a rapid series
  of SIGWINCH's.  This change forces nvi to loop on the call in the event
  that the call is interrupted.

Interestingly, I submitted this bug report in 1998, and a solution was
posted shortly thereafter by Matthias Buelow; it's been sitting in the
PR database ever since.

Note: this takes this file off the vendor branch.  If and when we find
a vendor for this code, the fix should be given back to them.

PR:		bin/8438
Submitted by:	Matthias Buelow <mkb@altair.mayn.de>
MFC after:	1 month
2001-11-09 02:23:05 +00:00
jkh
421d760549 Close buffer overflow noted in security advisory DSA-085.
Submitted by:	Koga Youichirou <y-koga@jp.FreeBSD.org>
Obtained from:	Debian
2001-10-26 08:25:32 +00:00
dd
734109808b Fix an underflow resulting from the assumption !O_ISSET(sp, O_LEFTRIGHT)
(ironically, the assumption is in a code block which is conditional on its
converse).  This isn't strictly the correct fix; it's more of a workaround
to prevent an infinite loop.  The correct fix (see
ports/editors/nvi-devel/files/patch-vi-relative r1.1) would take a file off
the vendor branch, but since the result for this version of nvi is
identical, this route was elected.

PR:		28687
Approved by:	-developers
2001-07-19 11:02:11 +00:00
obrien
03087ed580 It is just stupid to have to do ``<ESC>!rm -f %'' to write a file you own.
So lets stop that nonsense and allow `w!' to do something useful.

Submitted by:	green
2001-07-09 04:11:33 +00:00
sobomax
3b4ec64f28 Update/improve Ukrainian translation.
Submitted by:	Olexander Kunytsa <kunia@istc.kiev.ua> (author of translation)
2001-04-17 11:00:58 +00:00
ben
122cb062c0 more(3) -> more(1), and add $FreeBSD$
PR:		24033
Submitted by:	Rich Morin <rdm@cfcl.com>
2001-01-03 18:32:10 +00:00
ru
a0f3c80b90 Follow POLA and bind the <End> key to the `$' command.
This is committed to the vendor (BOSTIC) branch because
it was accepted (committed) by ``nvi'' maintainers:

On Fri, Dec 01, 2000 at 03:51:14PM +0100, Sven Verdoolaege wrote:
[...]
> RCS file: /b/CVSROOT/vi/cl/cl_bsd.c,v
> Working file: cl_bsd.c
> head: 8.32
> branch:
> locks: strict
> access list:
> symbolic names:
>         nvi1-81-1: 8.31
>         nvi1-81-0: 8.30
>         nvi1-80: 8.29.0.2
> keyword substitution: kv
> total revisions: 32;    selected revisions: 1
> description:
> ----------------------------
> revision 8.32
> date: 2000/12/01 13:56:17;  author: skimo;  state: Exp;  lines: +2 -1
> allow use of <End> key on AT-compatible keyboards (Ruslan Ermilov <ru@FreeBSD.org>)
> =============================================================================
>
> RCS file: /b/CVSROOT/vi/cl/cl_term.c,v
> Working file: cl_term.c
> head: 10.28
> branch:
> locks: strict
> access list:
> symbolic names:
>         nvi1-81-1: 10.27
>         nvi1-81-0: 10.23
>         nvi1-80: 10.23.0.2
> keyword substitution: kv
> total revisions: 47;    selected revisions: 1
> description:
> ----------------------------
> revision 10.28
> date: 2000/12/01 13:56:18;  author: skimo;  state: Exp;  lines: +2 -1
> allow use of <End> key on AT-compatible keyboards (Ruslan Ermilov <ru@FreeBSD.org>)
2000-12-01 15:36:10 +00:00
ru
7679eff295 This commit was generated by cvs2svn to compensate for changes in r69482,
which included commits to RCS files with non-trunk default branches.
2000-12-01 15:36:10 +00:00
sheldonh
b2ba6cd9b9 Catch up to perl-5.6.0. 2000-12-01 12:11:24 +00:00
phantom
4cdc86dcb3 Ukrainian message catalogs for vi.
Submitted by:	Kunytsa Oleksander <kunia@snark.ukma.kiev.ua>
2000-08-22 21:59:42 +00:00
kris
e5b1a8eb3e 10 X's in mkstemp(). 2000-01-10 09:17:46 +00:00
jmas
246bb5b220 Re-encode spanish messages using ISO-8859-1.
Patches also sent to bostic@bostic.com.

PR:		bin/5966
Submitted by:	Jose M. Alcaide <jose@we.lc.ehu.es>
1999-09-17 08:30:48 +00:00
ru
19b029502b Fix a coredump when commands in ~/.exrc prepended with addresses.
PR:		13000
1999-09-14 14:34:58 +00:00
hoek
f785db3187 Fix potential buffer overflow when using gtags.
Submitted by:	Shigio Yamaguchi [3]shigio@wafu.netgate.net (gtags author)
PR:		bin/7607
1999-08-22 03:48:31 +00:00
brian
df1c1756e3 Set the close-on-exec flag when we lock the file we're editing.
This prevents any background sub-command executed from inheriting
the descriptor & lock (and making vi think that someone else is
editing the file when it re-edits).

Remembered from: An OpenBSD commit message from May '99
1999-08-06 08:34:42 +00:00
bde
93cb1af7ce Fixed printf format errors. 1999-04-03 06:58:32 +00:00
peter
fe0264475a Make this work with the perl5 in the source tree - the API has "evolved"
and some code glitches had to be fixed.
1998-12-16 04:00:25 +00:00
bde
dbc09be291 Fixed printf format errors. 1998-08-02 15:18:45 +00:00
wosch
21a8eb1d31 Polish message catalogs for vi.
Submitted by: abial@warman.org.pl
PR:         4522
1997-09-22 23:14:37 +00:00
charnier
8f0e7746f7 Typo: environmental variable -> environment variable. 1997-09-18 06:49:40 +00:00
wosch
fde8a8ec46 spelling corrections.
PR: docs/4450
Submitted by: josh@quick.net
1997-09-13 16:01:53 +00:00
jkh
c87043915b Enable GLOBAL tags support for nvi.
Submitted-By: Shigio Yamaguchi <shigio@wafu.netgate.net>
1997-04-18 23:36:52 +00:00