mirror of
https://github.com/vbatts/bvi.git
synced 2025-08-03 16:10:28 +00:00
Compare commits
No commits in common. "master" and "v1.4.1" have entirely different histories.
31 changed files with 2298 additions and 3482 deletions
30
CHANGES
30
CHANGES
|
@ -1,33 +1,3 @@
|
||||||
New in release 1.5.0
|
|
||||||
====================
|
|
||||||
|
|
||||||
* Terminal window resizeable
|
|
||||||
* fix build fails with gcc-15/C23
|
|
||||||
* fix statusline for small windows
|
|
||||||
* various issues caught by lintian solved
|
|
||||||
* fix old-style-definition warnings
|
|
||||||
* Minor fixes
|
|
||||||
|
|
||||||
|
|
||||||
New in release 1.4.2
|
|
||||||
====================
|
|
||||||
This release is dedicated to Sven Guckes (*1967-04-06 +2022-02-20).
|
|
||||||
Sven was an enthusiastic Linux explainer, his particular passion was the console tools.
|
|
||||||
I met Sven a couple of times. He always showed interest in the further development of
|
|
||||||
the bvi and liked to discuss new ideas.
|
|
||||||
R.I.P. Sven
|
|
||||||
|
|
||||||
* :wq bug fixed
|
|
||||||
* Error-message if input no terminal
|
|
||||||
* Mixed licenses (SF bug #10)
|
|
||||||
* Segmentation fault occurs on undo (SF bug #11)
|
|
||||||
* Segmentation fault occurs on substitution in 32-bit systems (SF bug #12)
|
|
||||||
* ncursesw support
|
|
||||||
* Handling inputs larger than 2^31 bytes (SF bug #13)
|
|
||||||
* Some incorrect function prototypes in ANSI mode fixed (SF bug #14)
|
|
||||||
* Minor fixes
|
|
||||||
|
|
||||||
|
|
||||||
New in release 1.4.1
|
New in release 1.4.1
|
||||||
====================
|
====================
|
||||||
|
|
||||||
|
|
10
CREDITS
10
CREDITS
|
@ -1,7 +1,7 @@
|
||||||
Patches:
|
Patches:
|
||||||
Etienne Mollier <emollier@debian.org> gcc-15/C23 issues
|
Guido <guido@bearix.oche.de> sys_errlist
|
||||||
Matthias Klose <doko@debian.org> GCC-15 issues
|
Christian "naddy" Weisgerber <naddy@mips.rhein-neckar.de> {Free,Open}BSD
|
||||||
Vincent Batts <vbatts@hashbangbash.com> nit cleanup
|
Gunnar Larisch <la@softing.com> ^ZZ bug
|
||||||
Peter J. Holzer <hjp@wsr.ac.at> setlocale
|
Peter J. Holzer <hjp@wsr.ac.at> setlocale
|
||||||
Albert Chin-A-Young <china@thewrittenword.com> Makefile.in
|
Albert Chin-A-Young <china@thewrittenword.com> Makefile.in
|
||||||
Ralf <rks@ffm.tc.iot.dtag.de> AIX fixes
|
Ralf <rks@ffm.tc.iot.dtag.de> AIX fixes
|
||||||
|
@ -22,10 +22,6 @@ Josef Hinteregger <joehtg@joehtg.co.at> ZZ write bug, lfs
|
||||||
Richard Yao <ryao@gentoo.org> Buffer overflow at terminals > 255, ncurses with tinfo, configure fixed
|
Richard Yao <ryao@gentoo.org> Buffer overflow at terminals > 255, ncurses with tinfo, configure fixed
|
||||||
<elo3456@sbcglobal.net> ~ operator dumps core
|
<elo3456@sbcglobal.net> ~ operator dumps core
|
||||||
Dave Keaton <davek@gmail.com> ASCII_DEL patch
|
Dave Keaton <davek@gmail.com> ASCII_DEL patch
|
||||||
Udo Hertrich-Jeromin <udo.hertrich-jeromin@tuwien.ac.at> ncursesw for tinycorelinux
|
|
||||||
Takashi Yano Segmentation fault occurs on undo, Segmentation fault occurs on substitution in 32-bit systems
|
|
||||||
Dominik Köppl <dkppl@dkppl.de> Handling inputs larger than 2^31 bytes
|
|
||||||
Christopher Head Some incorrect function prototypes in ANSI mode
|
|
||||||
|
|
||||||
|
|
||||||
Packages:
|
Packages:
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
# "autoconf" program (constructs like "@foo@" will get replaced in the
|
# "autoconf" program (constructs like "@foo@" will get replaced in the
|
||||||
# actual Makefile.
|
# actual Makefile.
|
||||||
#
|
#
|
||||||
# Copyright (c) 1996-2022 by Gerhard Buergmann
|
# Copyright (c) 1996-2019 by Gerhard Buergmann
|
||||||
# gerhard@puon.at
|
# gerhard@puon.at
|
||||||
#
|
#
|
||||||
# 1996-01-18 V 1.0.0
|
# 1996-01-18 V 1.0.0
|
||||||
|
@ -18,7 +18,6 @@
|
||||||
# 2003-07-03 V 1.3.2
|
# 2003-07-03 V 1.3.2
|
||||||
# 2014-10-01 V 1.4.0
|
# 2014-10-01 V 1.4.0
|
||||||
# 2019-01-30 V 1.4.1
|
# 2019-01-30 V 1.4.1
|
||||||
# 2022-02-08 V 1.4.2
|
|
||||||
#
|
#
|
||||||
###############################################
|
###############################################
|
||||||
|
|
||||||
|
@ -56,7 +55,7 @@ all: bvi bmore
|
||||||
bvi: $(OBJS) $(HEADER)
|
bvi: $(OBJS) $(HEADER)
|
||||||
$(CC) $(LDFLAGS) -o bvi $(OBJS) $(LIBS)
|
$(CC) $(LDFLAGS) -o bvi $(OBJS) $(LIBS)
|
||||||
|
|
||||||
bmore: $(BMOBJ) bmore.h
|
bmore: $(BMOBJ)
|
||||||
$(CC) $(LDFLAGS) -o bmore $(BMOBJ) $(LIBS)
|
$(CC) $(LDFLAGS) -o bmore $(BMOBJ) $(LIBS)
|
||||||
|
|
||||||
%.o: %.c $(INCLUDES)
|
%.o: %.c $(INCLUDES)
|
||||||
|
|
14
README
14
README
|
@ -1,6 +1,6 @@
|
||||||
BVI - Binary visual editor
|
BVI - Binary visual editor
|
||||||
==========================
|
==========================
|
||||||
https/bvi.sourceforge.net/
|
http://bvi.sourceforge.net/
|
||||||
|
|
||||||
This editor for binary files was written by Gerhard Buergmann
|
This editor for binary files was written by Gerhard Buergmann
|
||||||
and is distributed under the GPL (GNU Public License).
|
and is distributed under the GPL (GNU Public License).
|
||||||
|
@ -13,8 +13,8 @@ How to compile
|
||||||
https://www.cyberciti.biz/faq/linux-install-ncurses-library-headers-on-debian-ubuntu-centos-fedora/
|
https://www.cyberciti.biz/faq/linux-install-ncurses-library-headers-on-debian-ubuntu-centos-fedora/
|
||||||
|
|
||||||
|
|
||||||
gunzip -c bvi-1.5.0.src.tar.gz | tar xvf -
|
gunzip -c bvi-1.4.1.src.tar.gz | tar xvf -
|
||||||
cd bvi-1.5.0
|
cd bvi-1.4.1
|
||||||
./configure
|
./configure
|
||||||
make
|
make
|
||||||
make install
|
make install
|
||||||
|
@ -32,6 +32,14 @@ To avoid this behaviour use:
|
||||||
stty dsusp undef
|
stty dsusp undef
|
||||||
|
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
Subscribe to the bvi mailing for support, updates and other news:
|
||||||
|
|
||||||
|
Send a blank email to bvi-subscribe@yahoogroups.com. You will receive a
|
||||||
|
subscription confirmation message. Simply reply this message and your
|
||||||
|
subscription will be complete.
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
PLEASE send any bug reports (and fixes), code for new features,
|
PLEASE send any bug reports (and fixes), code for new features,
|
||||||
comments, questions, etc. (even flames) to:
|
comments, questions, etc. (even flames) to:
|
||||||
|
|
|
@ -4,8 +4,6 @@
|
||||||
|
|
||||||
#undef HAVE_CURSES_H
|
#undef HAVE_CURSES_H
|
||||||
|
|
||||||
#undef HAVE_NCURSESW_CURSES_H
|
|
||||||
|
|
||||||
#undef NO_SYSERRL
|
#undef NO_SYSERRL
|
||||||
|
|
||||||
#undef NEED_PUTC_CHAR
|
#undef NEED_PUTC_CHAR
|
||||||
|
|
21
bm_unix.c
21
bm_unix.c
|
@ -7,11 +7,10 @@
|
||||||
* 2010-06-02 V 1.3.4
|
* 2010-06-02 V 1.3.4
|
||||||
* 2013-08-22 V 1.4.0
|
* 2013-08-22 V 1.4.0
|
||||||
* 2019-10-09 V 1.4.1
|
* 2019-10-09 V 1.4.1
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -65,7 +64,8 @@ putchr(char ch)
|
||||||
#else
|
#else
|
||||||
|
|
||||||
int
|
int
|
||||||
putchr(int ch)
|
putchr(ch)
|
||||||
|
int ch;
|
||||||
{return putchar(ch);}
|
{return putchar(ch);}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -143,7 +143,8 @@ reset_tty()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
sig(int sig)
|
sig(sig)
|
||||||
|
int sig;
|
||||||
{
|
{
|
||||||
reset_tty();
|
reset_tty();
|
||||||
printf("\r\n");
|
printf("\r\n");
|
||||||
|
@ -155,15 +156,12 @@ sig(int sig)
|
||||||
* doshell() - run a command or an interactive shell
|
* doshell() - run a command or an interactive shell
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
doshell(char *cmd)
|
doshell(cmd)
|
||||||
|
char *cmd;
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
#ifndef DJGPP
|
#ifndef DJGPP
|
||||||
#ifdef __STDC__
|
|
||||||
char *getenv(const char *);
|
|
||||||
#else
|
|
||||||
char *getenv();
|
char *getenv();
|
||||||
#endif
|
|
||||||
char *shell;
|
char *shell;
|
||||||
char cline[128];
|
char cline[128];
|
||||||
#endif
|
#endif
|
||||||
|
@ -279,7 +277,10 @@ vgetc()
|
||||||
* Copy contents of memory (with possible overlapping).
|
* Copy contents of memory (with possible overlapping).
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
memmove(char *s1, char *s2, size_t n)
|
memmove(s1, s2, n)
|
||||||
|
char *s1;
|
||||||
|
char *s2;
|
||||||
|
size_t n;
|
||||||
{
|
{
|
||||||
bcopy(s2, s1, n);
|
bcopy(s2, s1, n);
|
||||||
return(s1);
|
return(s1);
|
||||||
|
|
4
bmore.1
4
bmore.1
|
@ -1,4 +1,4 @@
|
||||||
.TH BMORE 1 "24 May 2025"
|
.TH BMORE 1 "30 Jan 2019"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
bmore \- browse through a binary file
|
bmore \- browse through a binary file
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
|
@ -232,7 +232,7 @@ in the file remains unchanged. Regular expressions can be
|
||||||
edited using erase and kill characters.
|
edited using erase and kill characters.
|
||||||
Erasing back past the first column cancels the search command.
|
Erasing back past the first column cancels the search command.
|
||||||
.TP
|
.TP
|
||||||
.B '
|
.B \'
|
||||||
Single quote. Go to the point from which the last search started.
|
Single quote. Go to the point from which the last search started.
|
||||||
If no search has been performed in the current file,
|
If no search has been performed in the current file,
|
||||||
go to the beginning of the file.
|
go to the beginning of the file.
|
||||||
|
|
47
bmore.c
47
bmore.c
|
@ -8,10 +8,8 @@
|
||||||
* 2004-01-09 V 1.3.2
|
* 2004-01-09 V 1.3.2
|
||||||
* 2013-08-23 V 1.4.0
|
* 2013-08-23 V 1.4.0
|
||||||
* 2019-01-22 V 1.4.1
|
* 2019-01-22 V 1.4.1
|
||||||
* 2023-03-06 V 1.4.2
|
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* Copyright 1990-2025 by Gerhard Buergmann
|
* Copyright 1990-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
|
@ -51,7 +49,7 @@
|
||||||
|
|
||||||
#include "bmore.h"
|
#include "bmore.h"
|
||||||
|
|
||||||
char *copyright = "GPL (C) 1990-2022 by Gerhard Buergmann";
|
char *copyright = "GPL (C) 1990-2019 by Gerhard Buergmann";
|
||||||
|
|
||||||
int maxx, maxy;
|
int maxx, maxy;
|
||||||
int mymaxx = 0, mymaxy = 0;
|
int mymaxx = 0, mymaxy = 0;
|
||||||
|
@ -87,7 +85,7 @@ int prompt = 1;
|
||||||
char helppath[MAXCMD];
|
char helppath[MAXCMD];
|
||||||
|
|
||||||
static char progname[10];
|
static char progname[10];
|
||||||
static char cmdbuf[2 * MAXCMD];
|
static char cmdbuf[MAXCMD];
|
||||||
static int cnt = 0;
|
static int cnt = 0;
|
||||||
static int icnt = 0;
|
static int icnt = 0;
|
||||||
static int smode;
|
static int smode;
|
||||||
|
@ -114,7 +112,9 @@ usage()
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char *argv[])
|
main(argc, argv)
|
||||||
|
int argc;
|
||||||
|
char *argv[];
|
||||||
{
|
{
|
||||||
int ch, ch1;
|
int ch, ch1;
|
||||||
int colon = 0, last_ch = 0;
|
int colon = 0, last_ch = 0;
|
||||||
|
@ -532,7 +532,9 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
rdline(int ch, char *sstring)
|
rdline(ch, sstring)
|
||||||
|
int ch;
|
||||||
|
char *sstring;
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i = 0;
|
||||||
int ch1 = 0;
|
int ch1 = 0;
|
||||||
|
@ -584,7 +586,8 @@ rdline(int ch, char *sstring)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_next(int n)
|
do_next(n)
|
||||||
|
int n;
|
||||||
{
|
{
|
||||||
if (numfiles) {
|
if (numfiles) {
|
||||||
if (n == 1 && file_nr == numfiles) {
|
if (n == 1 && file_nr == numfiles) {
|
||||||
|
@ -610,7 +613,8 @@ do_next(int n)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
open_file(char *name)
|
open_file(name)
|
||||||
|
char *name;
|
||||||
{
|
{
|
||||||
struct stat buf;
|
struct stat buf;
|
||||||
|
|
||||||
|
@ -631,7 +635,9 @@ open_file(char *name)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
putline(char *buf, int num)
|
putline(buf, num)
|
||||||
|
char *buf;
|
||||||
|
int num;
|
||||||
{
|
{
|
||||||
int print_pos;
|
int print_pos;
|
||||||
unsigned char ch;
|
unsigned char ch;
|
||||||
|
@ -682,7 +688,8 @@ putline(char *buf, int num)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
printout(int lns)
|
printout(lns)
|
||||||
|
int lns;
|
||||||
{
|
{
|
||||||
int c, num;
|
int c, num;
|
||||||
int doub = 0;
|
int doub = 0;
|
||||||
|
@ -747,7 +754,9 @@ nextchar()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
pushback(int n, char *where)
|
pushback(n, where)
|
||||||
|
int n;
|
||||||
|
char *where;
|
||||||
{
|
{
|
||||||
if (cnt) memmove(cmdbuf + n, cmdbuf, n);
|
if (cnt) memmove(cmdbuf + n, cmdbuf, n);
|
||||||
memcpy(cmdbuf, where, n);
|
memcpy(cmdbuf, where, n);
|
||||||
|
@ -764,7 +773,8 @@ pushback(int n, char *where)
|
||||||
* 1 found
|
* 1 found
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
bmregexec(char *scan)
|
bmregexec(scan)
|
||||||
|
char *scan;
|
||||||
{
|
{
|
||||||
char *act;
|
char *act;
|
||||||
int count, test;
|
int count, test;
|
||||||
|
@ -882,7 +892,10 @@ bmregexec(char *scan)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
sbracket(int start, char *scan, int count)
|
sbracket(start, scan, count)
|
||||||
|
int start;
|
||||||
|
char *scan;
|
||||||
|
int count;
|
||||||
{
|
{
|
||||||
if (*scan++ == '^') {
|
if (*scan++ == '^') {
|
||||||
if (!memchr(scan, start, --count)) return 0;
|
if (!memchr(scan, start, --count)) return 0;
|
||||||
|
@ -894,7 +907,8 @@ sbracket(int start, char *scan, int count)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
bmsearch(int ch)
|
bmsearch(ch)
|
||||||
|
int ch;
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -946,7 +960,8 @@ emsg(string);
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
emsg(char *s)
|
emsg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
putchar('\r');
|
putchar('\r');
|
||||||
cleartoeol();
|
cleartoeol();
|
||||||
|
|
28
bmore.h
28
bmore.h
|
@ -11,11 +11,10 @@
|
||||||
* 2003-02-20 V 1.3.2
|
* 2003-02-20 V 1.3.2
|
||||||
* 2010-03-28 V 1.3.4
|
* 2010-03-28 V 1.3.4
|
||||||
* 2019-01-22 V 1.4.1
|
* 2019-01-22 V 1.4.1
|
||||||
* 2022-03-07 V 1.4.2
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2023 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -50,22 +49,19 @@
|
||||||
# include "patchlevel.h"
|
# include "patchlevel.h"
|
||||||
# include "config.h"
|
# include "config.h"
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
# if defined HAVE_NCURSESW_CURSES_H
|
# if HAVE_NCURSES_H
|
||||||
# include <ncursesw/curses.h>
|
|
||||||
# include <ncursesw/term.h>
|
|
||||||
# elif defined HAVE_NCURSESW_H
|
|
||||||
# include <ncursesw.h>
|
|
||||||
# elif defined HAVE_NCURSES_CURSES_H
|
|
||||||
# include <ncurses/curses.h>
|
|
||||||
# elif defined HAVE_NCURSES_H
|
|
||||||
# include <ncurses.h>
|
# include <ncurses.h>
|
||||||
# elif defined HAVE_CURSES_H
|
|
||||||
# include <curses.h>
|
|
||||||
# else
|
# else
|
||||||
# error "SysV or X/Open-compatible Curses header file required"
|
# include <curses.h>
|
||||||
# endif
|
# endif
|
||||||
# if HAVE_TERM_H
|
# if HAVE_TERM_H
|
||||||
# include <term.h>
|
# include <term.h>
|
||||||
|
# else
|
||||||
|
# if HAVE_NCURSES_TERM_H
|
||||||
|
# include <ncurses/term.h>
|
||||||
|
# else
|
||||||
|
# include <term.h>
|
||||||
|
# endif
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -136,15 +132,15 @@ extern int no_tty, no_intty;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(ANSI) || defined(__STDC__)
|
#ifdef ANSI
|
||||||
void initterm(void), set_tty(void), reset_tty(void);
|
void initterm(void), set_tty(void), reset_tty(void);
|
||||||
void cleartoeol(void), clearscreen(void), highlight(void);
|
void cleartoeol(void), clearscreen(void), highlight(void);
|
||||||
void normal(void), bmbeep(void), home(void), sig(int);
|
void normal(void), bmbeep(void), home(void), sig(void);
|
||||||
void doshell(char *), emsg(char *);
|
void doshell(char *), emsg(char *);
|
||||||
void do_next(int);
|
void do_next(int);
|
||||||
void bmsearch(int);
|
void bmsearch(int);
|
||||||
void pushback(int, char *);
|
void pushback(int, char *);
|
||||||
int open_file(char *);
|
int open_file(void);
|
||||||
int printout(int), rdline(int, char *);
|
int printout(int), rdline(int, char *);
|
||||||
int nextchar(void), vgetc(void);
|
int nextchar(void), vgetc(void);
|
||||||
int sbracket(int, char *, int);
|
int sbracket(int, char *, int);
|
||||||
|
|
43
bvi.1
43
bvi.1
|
@ -1,8 +1,8 @@
|
||||||
.rn '' }`
|
.rn '' }`
|
||||||
.\" $RCSfile$$Revision$$Date$
|
''' $RCSfile$$Revision$$Date$
|
||||||
.\"
|
'''
|
||||||
.\" $Log$
|
''' $Log$
|
||||||
.\"
|
'''
|
||||||
.de Sh
|
.de Sh
|
||||||
.br
|
.br
|
||||||
.if t .Sp
|
.if t .Sp
|
||||||
|
@ -31,12 +31,12 @@
|
||||||
|
|
||||||
.fi
|
.fi
|
||||||
..
|
..
|
||||||
.\"
|
'''
|
||||||
.\"
|
'''
|
||||||
.\" Set up \*(-- to give an unbreakable dash;
|
''' Set up \*(-- to give an unbreakable dash;
|
||||||
.\" string Tr holds user defined translation string.
|
''' string Tr holds user defined translation string.
|
||||||
.\" Bell System Logo is used as a dummy character.
|
''' Bell System Logo is used as a dummy character.
|
||||||
.\"
|
'''
|
||||||
.tr \(*W-|\(bv\*(Tr
|
.tr \(*W-|\(bv\*(Tr
|
||||||
.ie n \{\
|
.ie n \{\
|
||||||
.ds -- \(*W-
|
.ds -- \(*W-
|
||||||
|
@ -45,10 +45,10 @@
|
||||||
.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||||
.ds L" ""
|
.ds L" ""
|
||||||
.ds R" ""
|
.ds R" ""
|
||||||
.\" \*(M", \*(S", \*(N" and \*(T" are the equivalent of
|
''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of
|
||||||
.\" \*(L" and \*(R", except that they are used on ".xx" lines,
|
''' \*(L" and \*(R", except that they are used on ".xx" lines,
|
||||||
.\" such as .IP and .SH, which do another additional levels of
|
''' such as .IP and .SH, which do another additional levels of
|
||||||
.\" double-quote interpretation
|
''' double-quote interpretation
|
||||||
.ds M" """
|
.ds M" """
|
||||||
.ds S" """
|
.ds S" """
|
||||||
.ds N" """""
|
.ds N" """""
|
||||||
|
@ -93,7 +93,7 @@
|
||||||
.nr % 0
|
.nr % 0
|
||||||
.rr F
|
.rr F
|
||||||
.\}
|
.\}
|
||||||
.TH BVI 1 "BVI Version 1.5.0" "31/May/2025" "User Commands"
|
.TH BVI 1 "BVI Version 1.4.1" "30/Jan/2019" "User Commands"
|
||||||
.IX Title "BVI 1"
|
.IX Title "BVI 1"
|
||||||
.UC
|
.UC
|
||||||
.IX Name "bvi, bview - visual display editor for binary files"
|
.IX Name "bvi, bview - visual display editor for binary files"
|
||||||
|
@ -194,7 +194,7 @@
|
||||||
bvi, bview \- visual editor for binary files
|
bvi, bview \- visual editor for binary files
|
||||||
.SH "VERSION"
|
.SH "VERSION"
|
||||||
.IX Header "VERSION"
|
.IX Header "VERSION"
|
||||||
bvi-1.5.0
|
bvi-1.4.1
|
||||||
.SH "SYNOPSIS"
|
.SH "SYNOPSIS"
|
||||||
.IX Header "SYNOPSIS"
|
.IX Header "SYNOPSIS"
|
||||||
\fBbvi\fR\ \ \ [\fB\-R\fR]\ [\fB\-c\fR\ \fIcmd\fR]\ [\fB\-f\fR\ \fIscript\fR]\ [\fB\-s\fR\ \fIskip\fR]\ [\fB\-e\fR\ \fIend\fR]\ [\fB\-n\fR\ \fIlength\fR]\ \fIfile\fR...
|
\fBbvi\fR\ \ \ [\fB\-R\fR]\ [\fB\-c\fR\ \fIcmd\fR]\ [\fB\-f\fR\ \fIscript\fR]\ [\fB\-s\fR\ \fIskip\fR]\ [\fB\-e\fR\ \fIend\fR]\ [\fB\-n\fR\ \fIlength\fR]\ \fIfile\fR...
|
||||||
|
@ -273,7 +273,7 @@ Files are treated as one long stream of bytes. The characters
|
||||||
\*(L"newline\*(R" and \*(L"carriage return\*(R" are not special, id est they
|
\*(L"newline\*(R" and \*(L"carriage return\*(R" are not special, id est they
|
||||||
never mark the end of lines. Therefore the lines on the screen do not
|
never mark the end of lines. Therefore the lines on the screen do not
|
||||||
represent lines in the usual way. Data is broken across screen lines
|
represent lines in the usual way. Data is broken across screen lines
|
||||||
arbitrarily.
|
arbitarily.
|
||||||
As a consequence there are no commands in bvi from ex or vi
|
As a consequence there are no commands in bvi from ex or vi
|
||||||
that are based on line numbers, eg \*(L"dd\*(R", \*(L"yy\*(R", \*(L'C\*(R', \*(L'S\*(R', \*(L'o\*(R', \*(L'O\*(R'.
|
that are based on line numbers, eg \*(L"dd\*(R", \*(L"yy\*(R", \*(L'C\*(R', \*(L'S\*(R', \*(L'o\*(R', \*(L'O\*(R'.
|
||||||
This also changes the meaning of \*(L"range\*(R" before the \*(L":write\*(R" command
|
This also changes the meaning of \*(L"range\*(R" before the \*(L":write\*(R" command
|
||||||
|
@ -313,7 +313,7 @@ using these meta sequences:
|
||||||
.Ve
|
.Ve
|
||||||
Additional search commands:
|
Additional search commands:
|
||||||
Similar to the text search commands there are additional hex-search
|
Similar to the text search commands there are additional hex-search
|
||||||
functions \*(L'\e\*(R' and \*(L'#\*(R' which allow one to search for any byte value.
|
functions \*(L'\e\*(R' and \*(L'#\*(R' which allow to search for any byte value.
|
||||||
Example: \*(L"\e62 76 69\*(R" will search for the string \*(L"bvi\*(R".
|
Example: \*(L"\e62 76 69\*(R" will search for the string \*(L"bvi\*(R".
|
||||||
Spaces between hex value are optional, so searching
|
Spaces between hex value are optional, so searching
|
||||||
for \*(L"6775636B6573\*(R" will find \*(L"guckes\*(R".
|
for \*(L"6775636B6573\*(R" will find \*(L"guckes\*(R".
|
||||||
|
@ -584,7 +584,7 @@ the file. If you use ASCII mode you can use the special characters
|
||||||
\& ignorecase noic Ignores letter case in searching
|
\& ignorecase noic Ignores letter case in searching
|
||||||
\& magic nomagic Makes . [ * special in patterns
|
\& magic nomagic Makes . [ * special in patterns
|
||||||
\& memmove nomm enables insert and delete commands
|
\& memmove nomm enables insert and delete commands
|
||||||
\& offset of=0 adds an offset to the displayed addresses
|
\& offset of=0 adds an offset to the diplayed addresses
|
||||||
\& readonly noro If set, write fails unless you use ! after command
|
\& readonly noro If set, write fails unless you use ! after command
|
||||||
\& reverse nore display otherwise-printable characters with their
|
\& reverse nore display otherwise-printable characters with their
|
||||||
\& high bit set as reverse video
|
\& high bit set as reverse video
|
||||||
|
@ -606,7 +606,7 @@ bvi was developed by Gerhard Buergmann, Vienna, Austria
|
||||||
\fIgerhard@puon.at\fR
|
\fIgerhard@puon.at\fR
|
||||||
.SH "WWW"
|
.SH "WWW"
|
||||||
.IX Header "WWW"
|
.IX Header "WWW"
|
||||||
Bvi\ Homepage:\ \ https://bvi.sourceforge.net/
|
Bvi\ Homepage:\ \ http://bvi.sourceforge.net/
|
||||||
Vi\ Pages:\ \ \ \ \ \ http://www.guckes.net/vi/clones.php3
|
Vi\ Pages:\ \ \ \ \ \ http://www.guckes.net/vi/clones.php3
|
||||||
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (all\ about\ Vi\ and\ its\ clones)
|
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (all\ about\ Vi\ and\ its\ clones)
|
||||||
.SH "FILES"
|
.SH "FILES"
|
||||||
|
@ -614,6 +614,9 @@ Vi\ Pages:\ \ \ \ \ \ http://www.guckes.net/vi/clones.php3
|
||||||
\fI\ $HOME/.bvirc\fR\ \ \ \ \ \ \ \ \ \ editor\ startup\ file
|
\fI\ $HOME/.bvirc\fR\ \ \ \ \ \ \ \ \ \ editor\ startup\ file
|
||||||
.BR
|
.BR
|
||||||
\fI\ ./.bvirc\fR\ \ \ \ \ \ \ \ \ \ \ \ \ \ editor\ startup\ file
|
\fI\ ./.bvirc\fR\ \ \ \ \ \ \ \ \ \ \ \ \ \ editor\ startup\ file
|
||||||
|
.SH "BUGS"
|
||||||
|
.IX Header "BUGS"
|
||||||
|
Bvi does not update the screen when the terminal changes its size.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
.IX Header "SEE ALSO"
|
.IX Header "SEE ALSO"
|
||||||
\fIbmore\fR\|(1), \fIvi\fR\|(1), \fIstrings\fR\|(1), \fIascii\fR\|(5)
|
\fIbmore\fR\|(1), \fIvi\fR\|(1), \fIstrings\fR\|(1), \fIascii\fR\|(5)
|
||||||
|
|
79
bvi.c
79
bvi.c
|
@ -13,12 +13,10 @@
|
||||||
* 2013-08-23 V 1.4.0alpha
|
* 2013-08-23 V 1.4.0alpha
|
||||||
* 2014-10-07 V 1.4.0
|
* 2014-10-07 V 1.4.0
|
||||||
* 2019-10-12 V 1.4.1
|
* 2019-10-12 V 1.4.1
|
||||||
* 2023-03-06 V 1.4.2
|
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -35,7 +33,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
#include "bvi.h"
|
#include "bvi.h"
|
||||||
#include "set.h"
|
#include "set.h"
|
||||||
|
@ -45,7 +42,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
char *copyright = "(C) GPL 1996-2025 by Gerhard Buergmann";
|
char *copyright = "(C) GPL 1996-2019 by Gerhard Buergmann";
|
||||||
|
|
||||||
jmp_buf env; /* context for `longjmp' function */
|
jmp_buf env; /* context for `longjmp' function */
|
||||||
|
|
||||||
|
@ -66,8 +63,7 @@ FILE *Ausgabe_Datei;
|
||||||
int edits = 0;
|
int edits = 0;
|
||||||
int AnzAdd, Anzahl, Anzahl3;
|
int AnzAdd, Anzahl, Anzahl3;
|
||||||
off_t filesize, memsize, undosize;
|
off_t filesize, memsize, undosize;
|
||||||
int statusflag = 1;
|
|
||||||
int space = 2;
|
|
||||||
|
|
||||||
long precount = -1;
|
long precount = -1;
|
||||||
|
|
||||||
|
@ -119,7 +115,9 @@ usage()
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char *argv[])
|
main(argc, argv)
|
||||||
|
int argc;
|
||||||
|
char *argv[];
|
||||||
{
|
{
|
||||||
int ch;
|
int ch;
|
||||||
int lflag;
|
int lflag;
|
||||||
|
@ -147,13 +145,6 @@ main(int argc, char *argv[])
|
||||||
/* This should be the beginners version */
|
/* This should be the beginners version */
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isatty(fileno(stdin)) == 0) {
|
|
||||||
// Guckes
|
|
||||||
fprintf(stderr, "Input is not from a terminal\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
while (n < argc) {
|
while (n < argc) {
|
||||||
switch (argv[n][0]) {
|
switch (argv[n][0]) {
|
||||||
case '-':
|
case '-':
|
||||||
|
@ -248,7 +239,7 @@ main(int argc, char *argv[])
|
||||||
break;
|
break;
|
||||||
case BLOCK_BEGIN|BLOCK_END|BLOCK_LEN:
|
case BLOCK_BEGIN|BLOCK_END|BLOCK_LEN:
|
||||||
if (block_end - block_begin != block_size + 1) {
|
if (block_end - block_begin != block_size + 1) {
|
||||||
fprintf(stderr, "Ambiguous block data\n");
|
fprintf(stderr, "Ambigous block data\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -267,9 +258,7 @@ main(int argc, char *argv[])
|
||||||
maxy = LINES;
|
maxy = LINES;
|
||||||
if (params[P_LI].flags & P_CHANGED) maxy = P(P_LI);
|
if (params[P_LI].flags & P_CHANGED) maxy = P(P_LI);
|
||||||
P(P_SS) = maxy / 2;
|
P(P_SS) = maxy / 2;
|
||||||
/* We do not set P(P_LI) and P(P_CM) anymore, because 0 means "auto"
|
|
||||||
P(P_LI) = maxy;
|
P(P_LI) = maxy;
|
||||||
*/
|
|
||||||
maxy--;
|
maxy--;
|
||||||
keypad(stdscr, TRUE);
|
keypad(stdscr, TRUE);
|
||||||
scrollok(stdscr, TRUE);
|
scrollok(stdscr, TRUE);
|
||||||
|
@ -283,15 +272,15 @@ main(int argc, char *argv[])
|
||||||
/* reserve 1 hex digit more than required */
|
/* reserve 1 hex digit more than required */
|
||||||
char tmp[sizeof(block_begin) * 2 + 3];
|
char tmp[sizeof(block_begin) * 2 + 3];
|
||||||
AnzAdd = sprintf(tmp, "%llX", (long long unsigned)block_begin) + 1;
|
AnzAdd = sprintf(tmp, "%llX", (long long unsigned)block_begin) + 1;
|
||||||
if (AnzAdd < 8) AnzAdd = 8;
|
if (AnzAdd < 8)
|
||||||
if (AnzAdd > sizeof(block_begin) * 2) AnzAdd = sizeof(block_begin) * 2;
|
AnzAdd = 8;
|
||||||
|
if (AnzAdd > sizeof(block_begin) * 2)
|
||||||
|
AnzAdd = sizeof(block_begin) * 2;
|
||||||
sprintf(addr_form, "%%0%dllX ", AnzAdd);
|
sprintf(addr_form, "%%0%dllX ", AnzAdd);
|
||||||
AnzAdd = sprintf(tmp, addr_form, block_begin);
|
AnzAdd = sprintf(tmp, addr_form, block_begin);
|
||||||
|
|
||||||
Anzahl = ((COLS - AnzAdd - space) / 16) * 4;
|
Anzahl = ((COLS - AnzAdd - 1) / 16) * 4;
|
||||||
/*
|
|
||||||
P(P_CM) = Anzahl;
|
P(P_CM) = Anzahl;
|
||||||
*/
|
|
||||||
maxx = Anzahl * 4 + AnzAdd + 1;
|
maxx = Anzahl * 4 + AnzAdd + 1;
|
||||||
Anzahl3 = Anzahl * 3;
|
Anzahl3 = Anzahl * 3;
|
||||||
statsize = 35;
|
statsize = 35;
|
||||||
|
@ -330,10 +319,6 @@ main(int argc, char *argv[])
|
||||||
else precount = -1;
|
else precount = -1;
|
||||||
lflag = arrnum = 0;
|
lflag = arrnum = 0;
|
||||||
|
|
||||||
if (statusflag == 0) {
|
|
||||||
statusflag = 1;
|
|
||||||
clearstr();
|
|
||||||
}
|
|
||||||
switch (ch) {
|
switch (ch) {
|
||||||
case '^': x = AnzAdd;
|
case '^': x = AnzAdd;
|
||||||
loc = HEX;
|
loc = HEX;
|
||||||
|
@ -473,18 +458,6 @@ main(int argc, char *argv[])
|
||||||
fileinfo(name);
|
fileinfo(name);
|
||||||
wrstat = 0;
|
wrstat = 0;
|
||||||
break;
|
break;
|
||||||
case KEY_RESIZE:
|
|
||||||
if (P(P_CM) == 0) {
|
|
||||||
Anzahl = ((COLS - AnzAdd - space) / 4);
|
|
||||||
maxx = Anzahl * 4 + AnzAdd + 1;
|
|
||||||
Anzahl3 = Anzahl * 3;
|
|
||||||
status = Anzahl3 + Anzahl - statsize;
|
|
||||||
}
|
|
||||||
if (P(P_LI) == 0) {
|
|
||||||
screen = Anzahl * (maxy - 1);
|
|
||||||
maxy = LINES - 1;
|
|
||||||
P(P_SS) = maxy / 2;
|
|
||||||
}
|
|
||||||
case BVICTRL('L'): /*** REDRAW SCREEN ***/
|
case BVICTRL('L'): /*** REDRAW SCREEN ***/
|
||||||
new_screen();
|
new_screen();
|
||||||
break;
|
break;
|
||||||
|
@ -753,7 +726,8 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
|
|
||||||
off_t
|
off_t
|
||||||
calc_size(char *arg)
|
calc_size(arg)
|
||||||
|
char *arg;
|
||||||
{
|
{
|
||||||
off_t val;
|
off_t val;
|
||||||
extern int errno;
|
extern int errno;
|
||||||
|
@ -804,7 +778,9 @@ trunc_cur()
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
do_append(off_t count, char *buf)
|
do_append(count, buf)
|
||||||
|
off_t count;
|
||||||
|
char *buf;
|
||||||
{
|
{
|
||||||
if (filesize + count > memsize) {
|
if (filesize + count > memsize) {
|
||||||
if (enlarge(count + 100L)) return 1;
|
if (enlarge(count + 100L)) return 1;
|
||||||
|
@ -821,7 +797,8 @@ do_append(off_t count, char *buf)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_tilde(off_t count)
|
do_tilde(count)
|
||||||
|
off_t count;
|
||||||
{
|
{
|
||||||
if (filesize == 0L) return;
|
if (filesize == 0L) return;
|
||||||
undo_start = current;
|
undo_start = current;
|
||||||
|
@ -907,7 +884,10 @@ do_undo()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_over(PTR loc, off_t n, PTR buf)
|
do_over(loc, n, buf)
|
||||||
|
PTR loc;
|
||||||
|
off_t n;
|
||||||
|
PTR buf;
|
||||||
{
|
{
|
||||||
if (n < 1L) {
|
if (n < 1L) {
|
||||||
emsg(nobytes);
|
emsg(nobytes);
|
||||||
|
@ -929,13 +909,16 @@ do_over(PTR loc, off_t n, PTR buf)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_put(PTR loc, off_t n, PTR buf)
|
do_put(loc, n, buf)
|
||||||
|
PTR loc;
|
||||||
|
off_t n;
|
||||||
|
PTR buf;
|
||||||
{
|
{
|
||||||
if (n < 1L) {
|
if (n < 1L) {
|
||||||
emsg(nobytes);
|
emsg(nobytes);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (loc >= maxpos) {
|
if (loc > maxpos) {
|
||||||
beep();
|
beep();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -957,7 +940,8 @@ do_put(PTR loc, off_t n, PTR buf)
|
||||||
|
|
||||||
/* argument sig not used, because only SIGINT will be catched */
|
/* argument sig not used, because only SIGINT will be catched */
|
||||||
void
|
void
|
||||||
jmpproc(int sig)
|
jmpproc(sig)
|
||||||
|
int sig;
|
||||||
{
|
{
|
||||||
if (P(P_EB)) beep();
|
if (P(P_EB)) beep();
|
||||||
repaint();
|
repaint();
|
||||||
|
@ -968,7 +952,8 @@ jmpproc(int sig)
|
||||||
|
|
||||||
|
|
||||||
off_t
|
off_t
|
||||||
range(int ch)
|
range(ch)
|
||||||
|
int ch;
|
||||||
{
|
{
|
||||||
int ch1;
|
int ch1;
|
||||||
long count;
|
long count;
|
||||||
|
|
28
bvi.h
28
bvi.h
|
@ -12,12 +12,10 @@
|
||||||
* 2010-08-04 V 1.3.4
|
* 2010-08-04 V 1.3.4
|
||||||
* 2014-10-01 V 1.4.0
|
* 2014-10-01 V 1.4.0
|
||||||
* 2019-01-28 V 1.4.1
|
* 2019-01-28 V 1.4.1
|
||||||
* 2023-03-07 V 1.4.2
|
|
||||||
* 2025-05-24 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -52,19 +50,11 @@
|
||||||
#else
|
#else
|
||||||
# include "patchlevel.h"
|
# include "patchlevel.h"
|
||||||
# include "config.h"
|
# include "config.h"
|
||||||
#if defined HAVE_NCURSESW_CURSES_H
|
#if HAVE_NCURSES_H
|
||||||
# include <ncursesw/curses.h>
|
# include <ncurses.h>
|
||||||
#elif defined HAVE_NCURSESW_H
|
#else
|
||||||
# include <ncursesw.h>
|
# include <curses.h>
|
||||||
#elif defined HAVE_NCURSES_CURSES_H
|
#endif
|
||||||
# include <ncurses/curses.h>
|
|
||||||
#elif defined HAVE_NCURSES_H
|
|
||||||
# include <ncurses.h>
|
|
||||||
#elif defined HAVE_CURSES_H
|
|
||||||
# include <curses.h>
|
|
||||||
#else
|
|
||||||
# error "SysV or X/Open-compatible Curses header file required"
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* defines for filemode */
|
/* defines for filemode */
|
||||||
|
@ -201,8 +191,6 @@ extern int smode;
|
||||||
extern int again;
|
extern int again;
|
||||||
extern int block_flag;
|
extern int block_flag;
|
||||||
extern off_t block_begin, block_end, block_size;
|
extern off_t block_begin, block_end, block_size;
|
||||||
extern int statusflag;
|
|
||||||
extern int space;
|
|
||||||
|
|
||||||
#ifndef S_ISDIR /* POSIX 1003.1 file type tests. */
|
#ifndef S_ISDIR /* POSIX 1003.1 file type tests. */
|
||||||
#define S_ISDIR(m) ((m & 0170000) == 0040000) /* directory */
|
#define S_ISDIR(m) ((m & 0170000) == 0040000) /* directory */
|
||||||
|
@ -217,7 +205,7 @@ extern int space;
|
||||||
void d_memmove(PTR, PTR, off_t);
|
void d_memmove(PTR, PTR, off_t);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(ANSI) || defined(__STDC__)
|
#ifdef ANSI
|
||||||
off_t alloc_buf(off_t, char **), yd_addr(void);
|
off_t alloc_buf(off_t, char **), yd_addr(void);
|
||||||
off_t range(int);
|
off_t range(int);
|
||||||
void do_dot(void), do_exit(void), do_shell(void), do_undo(void);
|
void do_dot(void), do_exit(void), do_shell(void), do_undo(void);
|
||||||
|
@ -227,7 +215,7 @@ extern int space;
|
||||||
void docmdline(char *), do_over(PTR, off_t, PTR), do_put(PTR, off_t, PTR);
|
void docmdline(char *), do_over(PTR, off_t, PTR), do_put(PTR, off_t, PTR);
|
||||||
void jmpproc(int), printline(PTR, int);
|
void jmpproc(int), printline(PTR, int);
|
||||||
int addfile(char *);
|
int addfile(char *);
|
||||||
PTR bregexec(PTR, char *);
|
int bregexec(PTR, char *);
|
||||||
int chk_comm(int);
|
int chk_comm(int);
|
||||||
int doecmd(char *, int);
|
int doecmd(char *, int);
|
||||||
int do_append(off_t, char *), do_logic(int, char *);
|
int do_append(off_t, char *), do_logic(int, char *);
|
||||||
|
|
67
comm.c
67
comm.c
|
@ -14,12 +14,10 @@
|
||||||
* 2010-06-02 V 1.3.4
|
* 2010-06-02 V 1.3.4
|
||||||
* 2014-01-28 V 1.4.0
|
* 2014-01-28 V 1.4.0
|
||||||
* 2019-01-27 V 1.4.1
|
* 2019-01-27 V 1.4.1
|
||||||
* 2023-03-06 V 1.4.2
|
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -73,8 +71,8 @@ static char *c_argv[9];
|
||||||
|
|
||||||
char *nowrtmsg = "No write@since last change (:%s! overrides)";
|
char *nowrtmsg = "No write@since last change (:%s! overrides)";
|
||||||
char *morefiles = "more files@to edit";
|
char *morefiles = "more files@to edit";
|
||||||
char *ambigous = "Ambiguous|Too many file names";
|
char *ambigous = "Ambigous|Too many file names";
|
||||||
char *ambvalue = "Ambiguous|Too many values";
|
char *ambvalue = "Ambigous|Too many values";
|
||||||
char *extra = "Extra chars|Extra characters at end of command";
|
char *extra = "Extra chars|Extra characters at end of command";
|
||||||
char *noaddr = "No address allowed@on this command";
|
char *noaddr = "No address allowed@on this command";
|
||||||
char *noval = "No value@for binary operation";
|
char *noval = "No value@for binary operation";
|
||||||
|
@ -89,7 +87,7 @@ extern char **files; /* used for "next" and "rewind" */
|
||||||
extern int numfiles, curfile;
|
extern int numfiles, curfile;
|
||||||
extern int errno;
|
extern int errno;
|
||||||
|
|
||||||
static char oldbuf[CMDSZ + 3]; /** for :!! command **/
|
static char oldbuf[CMDSZ]; /** for :!! command **/
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -99,7 +97,8 @@ static char oldbuf[CMDSZ + 3]; /** for :!! command **/
|
||||||
* the environment variable "BVIINIT" (or eventually .bvirc).
|
* the environment variable "BVIINIT" (or eventually .bvirc).
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
docmdline(char *cmdline)
|
docmdline(cmdline)
|
||||||
|
char *cmdline;
|
||||||
{
|
{
|
||||||
char buff[CMDSZ];
|
char buff[CMDSZ];
|
||||||
char cmdbuf[CMDSZ];
|
char cmdbuf[CMDSZ];
|
||||||
|
@ -309,7 +308,7 @@ docmdline(char *cmdline)
|
||||||
else ok = save(c_argv[0], start_addr, end_addr, saveflag);
|
else ok = save(c_argv[0], start_addr, end_addr, saveflag);
|
||||||
} else {
|
} else {
|
||||||
if (c_argc == 0) {
|
if (c_argc == 0) {
|
||||||
ok = save_chk(name, start_addr, end_addr, saveflag);
|
save_chk(name, start_addr, end_addr, saveflag);
|
||||||
} else {
|
} else {
|
||||||
if (!stat(c_argv[0], &buf)) {
|
if (!stat(c_argv[0], &buf)) {
|
||||||
if (saveflag == WRITE) {
|
if (saveflag == WRITE) {
|
||||||
|
@ -629,7 +628,11 @@ yd_addr()
|
||||||
|
|
||||||
/*********** Save file if not read only ********************/
|
/*********** Save file if not read only ********************/
|
||||||
int
|
int
|
||||||
save_chk(char *fname, char *start, char *end, int flags)
|
save_chk(fname, start, end, flags)
|
||||||
|
char *fname;
|
||||||
|
char *start;
|
||||||
|
char *end;
|
||||||
|
int flags;
|
||||||
{
|
{
|
||||||
if (P(P_RO)) {
|
if (P(P_RO)) {
|
||||||
sprintf(string, "\"%s\" File is read only", name);
|
sprintf(string, "\"%s\" File is read only", name);
|
||||||
|
@ -653,7 +656,9 @@ do_exit()
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
doecmd(char *arg, int force)
|
doecmd(arg, force)
|
||||||
|
char *arg;
|
||||||
|
int force;
|
||||||
{
|
{
|
||||||
char *tmp;
|
char *tmp;
|
||||||
|
|
||||||
|
@ -716,34 +721,33 @@ clearstr()
|
||||||
|
|
||||||
/**** displays an error message *****/
|
/**** displays an error message *****/
|
||||||
void
|
void
|
||||||
emsg(char *s)
|
emsg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
int cnt;
|
int cnt;
|
||||||
/*
|
|
||||||
int stchar;
|
int stchar;
|
||||||
|
|
||||||
|
if (P(P_EB)) beep();
|
||||||
if (P(P_MO)) {
|
if (P(P_MO)) {
|
||||||
stchar = statsize;
|
stchar = statsize;
|
||||||
} else {
|
} else {
|
||||||
stchar = 0;
|
stchar = 0;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
if (P(P_EB)) beep();
|
|
||||||
statusflag = 0;
|
|
||||||
clearstr();
|
clearstr();
|
||||||
attrset(A_REVERSE);
|
attrset(A_REVERSE);
|
||||||
cnt = outmsg(s);
|
cnt = outmsg(s);
|
||||||
attrset(A_NORMAL);
|
attrset(A_NORMAL);
|
||||||
if (cnt >= (maxx)) {
|
if (cnt >= (maxx - stchar)) {
|
||||||
// addch('\n');
|
addch('\n');
|
||||||
wait_return(TRUE);
|
wait_return(TRUE); }
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*** System error message *****/
|
/*** System error message *****/
|
||||||
void
|
void
|
||||||
sysemsg(char *s)
|
sysemsg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
char string[256];
|
char string[256];
|
||||||
|
|
||||||
|
@ -759,7 +763,8 @@ sysemsg(char *s)
|
||||||
|
|
||||||
/*** displays mode if showmode set *****/
|
/*** displays mode if showmode set *****/
|
||||||
void
|
void
|
||||||
smsg(char *s)
|
smsg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
if (P(P_MO)) {
|
if (P(P_MO)) {
|
||||||
msg(s);
|
msg(s);
|
||||||
|
@ -770,27 +775,27 @@ smsg(char *s)
|
||||||
|
|
||||||
/************* displays s on status line *****************/
|
/************* displays s on status line *****************/
|
||||||
void
|
void
|
||||||
msg(char *s)
|
msg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
int stchar;
|
int stchar;
|
||||||
|
|
||||||
if (P(P_MO)) {
|
if (P(P_MO)) {
|
||||||
stchar = statsize;
|
stchar = statsize;
|
||||||
} else {
|
} else {
|
||||||
stchar = 0;
|
stchar = 0;
|
||||||
}o*/
|
}
|
||||||
statusflag = 0;
|
|
||||||
clearstr();
|
clearstr();
|
||||||
if (outmsg(s) >= maxx) {
|
if (outmsg(s) >= (maxx - stchar)) {
|
||||||
// addch('\n');
|
addch('\n');
|
||||||
wait_return(TRUE);
|
wait_return(TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
outmsg(char *s)
|
outmsg(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
char *poi;
|
char *poi;
|
||||||
int cnt = 0;
|
int cnt = 0;
|
||||||
|
@ -822,7 +827,8 @@ outmsg(char *s)
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
wait_return(int flag)
|
wait_return(flag)
|
||||||
|
int flag;
|
||||||
{
|
{
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
|
@ -845,7 +851,8 @@ wait_return(int flag)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
chk_comm(int flag)
|
chk_comm(flag)
|
||||||
|
int flag;
|
||||||
{
|
{
|
||||||
if ((flag & NO_ADDR) && (addr_flag > 0)) {
|
if ((flag & NO_ADDR) && (addr_flag > 0)) {
|
||||||
emsg(noaddr); return 1; }
|
emsg(noaddr); return 1; }
|
||||||
|
|
1272
config.guess
vendored
1272
config.guess
vendored
File diff suppressed because it is too large
Load diff
105
config.h.in
105
config.h.in
|
@ -1,144 +1,87 @@
|
||||||
/* config.h.in. Generated from configure.ac by autoheader. */
|
/* config.h.in. Generated automatically from configure.in by autoheader. */
|
||||||
/***** begin user configuration section *****/
|
/***** begin user configuration section *****/
|
||||||
|
|
||||||
#undef HAVE_NCURSES_H
|
#undef HAVE_NCURSES_H
|
||||||
|
|
||||||
#undef HAVE_CURSES_H
|
#undef HAVE_CURSES_H
|
||||||
|
|
||||||
#undef HAVE_NCURSESW_CURSES_H
|
|
||||||
|
|
||||||
#undef NO_SYSERRL
|
#undef NO_SYSERRL
|
||||||
|
|
||||||
#undef NEED_PUTC_CHAR
|
#undef NEED_PUTC_CHAR
|
||||||
|
|
||||||
#undef HAVE_NCURSES_TERM_H
|
#undef HAVE_NCURSES_TERM_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <fcntl.h> header file. */
|
/* Define if you have the <fcntl.h> header file. */
|
||||||
#undef HAVE_FCNTL_H
|
#undef HAVE_FCNTL_H
|
||||||
|
|
||||||
/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
|
/* Define if you have the <inttypes.h> header file. */
|
||||||
#undef HAVE_FSEEKO
|
|
||||||
|
|
||||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
|
||||||
#undef HAVE_INTTYPES_H
|
#undef HAVE_INTTYPES_H
|
||||||
|
|
||||||
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
|
/* Define if you have the `memmove' function. */
|
||||||
to 0 otherwise. */
|
|
||||||
#undef HAVE_MALLOC
|
|
||||||
|
|
||||||
/* Define to 1 if you have the `memmove' function. */
|
|
||||||
#undef HAVE_MEMMOVE
|
#undef HAVE_MEMMOVE
|
||||||
|
|
||||||
/* Define to 1 if you have the <memory.h> header file. */
|
/* Define if you have the <memory.h> header file. */
|
||||||
#undef HAVE_MEMORY_H
|
#undef HAVE_MEMORY_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <ncurses/term.h> header file. */
|
/* Define if you have the <ncurses/term.h> header file. */
|
||||||
#undef HAVE_NCURSES_TERM_H
|
#undef HAVE_NCURSES_TERM_H
|
||||||
|
|
||||||
/* Define to 1 if your system has a GNU libc compatible `realloc' function,
|
/* Define if you have the <stdint.h> header file. */
|
||||||
and to 0 otherwise. */
|
|
||||||
#undef HAVE_REALLOC
|
|
||||||
|
|
||||||
/* Define to 1 if you have the <stdint.h> header file. */
|
|
||||||
#undef HAVE_STDINT_H
|
#undef HAVE_STDINT_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
/* Define if you have the <stdlib.h> header file. */
|
||||||
#undef HAVE_STDLIB_H
|
#undef HAVE_STDLIB_H
|
||||||
|
|
||||||
/* Define to 1 if you have the `strdup' function. */
|
/* Define if you have the `strdup' function. */
|
||||||
#undef HAVE_STRDUP
|
#undef HAVE_STRDUP
|
||||||
|
|
||||||
/* Define to 1 if you have the `strerror' function. */
|
/* Define if you have the `strerror' function. */
|
||||||
#undef HAVE_STRERROR
|
#undef HAVE_STRERROR
|
||||||
|
|
||||||
/* Define to 1 if you have the <strings.h> header file. */
|
/* Define if you have the <strings.h> header file. */
|
||||||
#undef HAVE_STRINGS_H
|
#undef HAVE_STRINGS_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <string.h> header file. */
|
/* Define if you have the <string.h> header file. */
|
||||||
#undef HAVE_STRING_H
|
#undef HAVE_STRING_H
|
||||||
|
|
||||||
/* Define to 1 if you have the `strtol' function. */
|
/* Define if you have the `strtol' function. */
|
||||||
#undef HAVE_STRTOL
|
#undef HAVE_STRTOL
|
||||||
|
|
||||||
/* Define to 1 if you have the `strtoll' function. */
|
/* Define if you have the <sys/stat.h> header file. */
|
||||||
#undef HAVE_STRTOLL
|
|
||||||
|
|
||||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
|
||||||
#undef HAVE_SYS_STAT_H
|
#undef HAVE_SYS_STAT_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
/* Define if you have the <sys/types.h> header file. */
|
||||||
#undef HAVE_SYS_TYPES_H
|
#undef HAVE_SYS_TYPES_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <termcap.h> header file. */
|
/* Define if you have the <termcap.h> header file. */
|
||||||
#undef HAVE_TERMCAP_H
|
#undef HAVE_TERMCAP_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <termios.h> header file. */
|
/* Define if you have the <termios.h> header file. */
|
||||||
#undef HAVE_TERMIOS_H
|
#undef HAVE_TERMIOS_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <termio.h> header file. */
|
/* Define if you have the <termio.h> header file. */
|
||||||
#undef HAVE_TERMIO_H
|
#undef HAVE_TERMIO_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <term.h> header file. */
|
/* Define if you have the <term.h> header file. */
|
||||||
#undef HAVE_TERM_H
|
#undef HAVE_TERM_H
|
||||||
|
|
||||||
/* Define to 1 if you have the <unistd.h> header file. */
|
/* Define if you have the <unistd.h> header file. */
|
||||||
#undef HAVE_UNISTD_H
|
#undef HAVE_UNISTD_H
|
||||||
|
|
||||||
/* Define to the address where bug reports for this package should be sent. */
|
/* The size of a `int', as computed by sizeof. */
|
||||||
#undef PACKAGE_BUGREPORT
|
|
||||||
|
|
||||||
/* Define to the full name of this package. */
|
|
||||||
#undef PACKAGE_NAME
|
|
||||||
|
|
||||||
/* Define to the full name and version of this package. */
|
|
||||||
#undef PACKAGE_STRING
|
|
||||||
|
|
||||||
/* Define to the one symbol short name of this package. */
|
|
||||||
#undef PACKAGE_TARNAME
|
|
||||||
|
|
||||||
/* Define to the home page for this package. */
|
|
||||||
#undef PACKAGE_URL
|
|
||||||
|
|
||||||
/* Define to the version of this package. */
|
|
||||||
#undef PACKAGE_VERSION
|
|
||||||
|
|
||||||
/* The size of `int', as computed by sizeof. */
|
|
||||||
#undef SIZEOF_INT
|
#undef SIZEOF_INT
|
||||||
|
|
||||||
/* The size of `long', as computed by sizeof. */
|
/* The size of a `long', as computed by sizeof. */
|
||||||
#undef SIZEOF_LONG
|
#undef SIZEOF_LONG
|
||||||
|
|
||||||
/* The size of `long long', as computed by sizeof. */
|
/* The size of a `void *', as computed by sizeof. */
|
||||||
#undef SIZEOF_LONG_LONG
|
|
||||||
|
|
||||||
/* The size of `void *', as computed by sizeof. */
|
|
||||||
#undef SIZEOF_VOID_P
|
#undef SIZEOF_VOID_P
|
||||||
|
|
||||||
/* Define to 1 if you have the ANSI C header files. */
|
/* Define if you have the ANSI C header files. */
|
||||||
#undef STDC_HEADERS
|
#undef STDC_HEADERS
|
||||||
|
|
||||||
/* Enable large inode numbers on Mac OS X 10.5. */
|
|
||||||
#ifndef _DARWIN_USE_64_BIT_INODE
|
|
||||||
# define _DARWIN_USE_64_BIT_INODE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Number of bits in a file offset, on hosts where this is settable. */
|
|
||||||
#undef _FILE_OFFSET_BITS
|
|
||||||
|
|
||||||
/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
|
|
||||||
#undef _LARGEFILE_SOURCE
|
|
||||||
|
|
||||||
/* Define for large files, on AIX-style hosts. */
|
|
||||||
#undef _LARGE_FILES
|
|
||||||
|
|
||||||
/* Define to rpl_malloc if the replacement function should be used. */
|
|
||||||
#undef malloc
|
|
||||||
|
|
||||||
/* Define to `int' if <sys/types.h> does not define. */
|
/* Define to `int' if <sys/types.h> does not define. */
|
||||||
#undef off_t
|
#undef off_t
|
||||||
|
|
||||||
/* Define to rpl_realloc if the replacement function should be used. */
|
|
||||||
#undef realloc
|
|
||||||
|
|
||||||
/* Define to `unsigned int' if <sys/types.h> does not define. */
|
/* Define to `unsigned int' if <sys/types.h> does not define. */
|
||||||
#undef size_t
|
#undef size_t
|
||||||
|
|
1423
config.sub
vendored
1423
config.sub
vendored
File diff suppressed because it is too large
Load diff
15
configure.ac
15
configure.ac
|
@ -63,23 +63,18 @@ AC_ARG_WITH(ncurses,
|
||||||
])
|
])
|
||||||
|
|
||||||
AC_CHECK_HEADER([ncurses.h],[
|
AC_CHECK_HEADER([ncurses.h],[
|
||||||
AC_SEARCH_LIBS([initscr], [ncurses], [
|
AC_SEARCH_LIBS([initscr], [ncurses],[
|
||||||
AC_DEFINE(HAVE_NCURSES_H)
|
AC_DEFINE(HAVE_NCURSES_H)
|
||||||
AC_SEARCH_LIBS([tputs], [tinfo])],[
|
AC_SEARCH_LIBS([tputs], [tinfo])], [
|
||||||
AC_SEARCH_LIBS([initscr], [curses],[
|
AC_SEARCH_LIBS([initscr], [curses],[
|
||||||
AC_DEFINE(HAVE_CURSES_H)
|
AC_DEFINE(HAVE_CURSES_H)
|
||||||
AC_SEARCH_LIBS([tputs], [tinfo])],[
|
AC_SEARCH_LIBS([tputs], [tinfo])],[
|
||||||
AC_MSG_ERROR([bvi requires a curses library])])])
|
AC_MSG_ERROR([bvi requires the curses library])])])],[
|
||||||
],[
|
|
||||||
AC_CHECK_HEADER([curses.h],[
|
AC_CHECK_HEADER([curses.h],[
|
||||||
AC_SEARCH_LIBS([initscr], [curses], [
|
AC_SEARCH_LIBS([initscr], [curses], [
|
||||||
AC_DEFINE(HAVE_CURSES_H)],[
|
AC_DEFINE(HAVE_CURSES_H)],[
|
||||||
AC_MSG_ERROR([bvi requires a curses library])])],[
|
AC_MSG_ERROR([bvi requires the curses library])])],[
|
||||||
AC_CHECK_HEADER([ncursesw/curses.h], [
|
AC_MSG_ERROR([bvi requires the curses library])])])
|
||||||
AC_SEARCH_LIBS([initscr], [ncursesw], [
|
|
||||||
AC_DEFINE(HAVE_NCURSESW_CURSES_H)],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])])],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])])])])
|
|
||||||
|
|
||||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||||
dnl AC_TYPE_SIZE_T
|
dnl AC_TYPE_SIZE_T
|
||||||
|
|
67
edit.c
67
edit.c
|
@ -12,9 +12,8 @@
|
||||||
* 2006-04-05 V 1.3.3 alpha - binary representation
|
* 2006-04-05 V 1.3.3 alpha - binary representation
|
||||||
* 2014-09-30 V 1.4.0
|
* 2014-09-30 V 1.4.0
|
||||||
* 2019-10-12 V 1.4.1
|
* 2019-10-12 V 1.4.1
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -64,7 +63,8 @@ static char *getcnext = NULL;
|
||||||
* characters (for "." command)
|
* characters (for "." command)
|
||||||
*/
|
*/
|
||||||
off_t
|
off_t
|
||||||
edit(int mode)
|
edit(mode)
|
||||||
|
int mode;
|
||||||
{
|
{
|
||||||
int ch, ch1;
|
int ch, ch1;
|
||||||
size_t len;
|
size_t len;
|
||||||
|
@ -286,7 +286,8 @@ escape:
|
||||||
* else setpage()
|
* else setpage()
|
||||||
*/
|
*/
|
||||||
PTR
|
PTR
|
||||||
do_ft(int ch, int flag)
|
do_ft(ch, flag)
|
||||||
|
int ch, flag;
|
||||||
{
|
{
|
||||||
static int chi;
|
static int chi;
|
||||||
static int chp = 1;
|
static int chp = 1;
|
||||||
|
@ -363,7 +364,8 @@ do_ft(int ch, int flag)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_z(int mode)
|
do_z(mode)
|
||||||
|
int mode;
|
||||||
{
|
{
|
||||||
switch (mode) {
|
switch (mode) {
|
||||||
case '.': while (y != maxy / 2) {
|
case '.': while (y != maxy / 2) {
|
||||||
|
@ -399,7 +401,8 @@ do_z(int mode)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
scrolldown(int lns)
|
scrolldown(lns)
|
||||||
|
int lns;
|
||||||
{
|
{
|
||||||
while (lns--) {
|
while (lns--) {
|
||||||
if (maxpos >= (pagepos + Anzahl)) pagepos += Anzahl;
|
if (maxpos >= (pagepos + Anzahl)) pagepos += Anzahl;
|
||||||
|
@ -411,7 +414,8 @@ scrolldown(int lns)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
scrollup(int lns)
|
scrollup(lns)
|
||||||
|
int lns;
|
||||||
{
|
{
|
||||||
while (lns--) {
|
while (lns--) {
|
||||||
if (mem <= (PTR)(pagepos - Anzahl)) pagepos -= Anzahl;
|
if (mem <= (PTR)(pagepos - Anzahl)) pagepos -= Anzahl;
|
||||||
|
@ -461,8 +465,7 @@ statpos()
|
||||||
off_t bytepos;
|
off_t bytepos;
|
||||||
char string[MAXCMD+1], str[6];
|
char string[MAXCMD+1], str[6];
|
||||||
|
|
||||||
// if (!P(P_MO)) return;
|
if (!P(P_MO)) return;
|
||||||
if (!statusflag) return;
|
|
||||||
bytepos = current - mem;
|
bytepos = current - mem;
|
||||||
if (bytepos >= filesize) {
|
if (bytepos >= filesize) {
|
||||||
// mvaddstr(maxy, status, " ");
|
// mvaddstr(maxy, status, " ");
|
||||||
|
@ -481,18 +484,10 @@ statpos()
|
||||||
}
|
}
|
||||||
bin_val[8] = '\0';
|
bin_val[8] = '\0';
|
||||||
|
|
||||||
attrset(A_BOLD);
|
|
||||||
status = maxx - 1 - statsize;
|
|
||||||
if (status > 0) {
|
|
||||||
sprintf(string, "%08llX %s \\%03o 0x%02X %3d ",
|
sprintf(string, "%08llX %s \\%03o 0x%02X %3d ",
|
||||||
(long long)(bytepos + P(P_OF)), bin_val, Char1, Char1, Char1);
|
(long long)(bytepos + P(P_OF)), bin_val, Char1, Char1, Char1);
|
||||||
} else {
|
attrset(A_BOLD);
|
||||||
sprintf(string, "%08llX %3d ",
|
status = maxx - 1 - statsize;
|
||||||
(long long)(bytepos + P(P_OF)), Char1);
|
|
||||||
mvaddstr(maxy, 0, string);
|
|
||||||
attrset(A_NORMAL);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
mvaddstr(maxy, status, string);
|
mvaddstr(maxy, status, string);
|
||||||
|
|
||||||
if (isprint(Char1)) {
|
if (isprint(Char1)) {
|
||||||
|
@ -526,9 +521,10 @@ statpos()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
printline(PTR mempos, int scpos)
|
printline(mempos, scpos)
|
||||||
|
PTR mempos;
|
||||||
|
int scpos;
|
||||||
{
|
{
|
||||||
PTR hl_start = 0;
|
PTR hl_start = 0;
|
||||||
PTR hl_end = 0;
|
PTR hl_end = 0;
|
||||||
|
@ -664,7 +660,8 @@ repaint() /***** redraw screen *********************/
|
||||||
|
|
||||||
/******* display an arbitrary address on screen *******/
|
/******* display an arbitrary address on screen *******/
|
||||||
void
|
void
|
||||||
setpage(PTR addr)
|
setpage(addr)
|
||||||
|
PTR addr;
|
||||||
{
|
{
|
||||||
if ((addr >= pagepos) && ((addr - pagepos) < screen)) {
|
if ((addr >= pagepos) && ((addr - pagepos) < screen)) {
|
||||||
y = (addr - pagepos) / Anzahl;
|
y = (addr - pagepos) / Anzahl;
|
||||||
|
@ -687,7 +684,8 @@ setpage(PTR addr)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
cur_forw(int check)
|
cur_forw(check)
|
||||||
|
int check;
|
||||||
{
|
{
|
||||||
if (check) {
|
if (check) {
|
||||||
if (current - mem >= filesize) {
|
if (current - mem >= filesize) {
|
||||||
|
@ -762,7 +760,8 @@ cur_back()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
fileinfo(char *fname)
|
fileinfo(fname)
|
||||||
|
char *fname;
|
||||||
{
|
{
|
||||||
off_t bytepos;
|
off_t bytepos;
|
||||||
char fstatus[MAXCMD];
|
char fstatus[MAXCMD];
|
||||||
|
@ -831,7 +830,8 @@ vgetc()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
stuffin(char *s)
|
stuffin(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
if (s == NULL) { /* clear the stuff buffer */
|
if (s == NULL) { /* clear the stuff buffer */
|
||||||
getcnext = NULL;
|
getcnext = NULL;
|
||||||
|
@ -846,7 +846,9 @@ stuffin(char *s)
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_back(off_t n, PTR start)
|
do_back(n, start)
|
||||||
|
off_t n;
|
||||||
|
PTR start;
|
||||||
{
|
{
|
||||||
if (start - n < mem) {
|
if (start - n < mem) {
|
||||||
beep();
|
beep();
|
||||||
|
@ -868,7 +870,9 @@ do_back(off_t n, PTR start)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
do_delete(off_t n, PTR start)
|
do_delete(n, start)
|
||||||
|
off_t n;
|
||||||
|
PTR start;
|
||||||
{
|
{
|
||||||
if (n + start > maxpos) {
|
if (n + start > maxpos) {
|
||||||
beep();
|
beep();
|
||||||
|
@ -898,7 +902,10 @@ do_delete(off_t n, PTR start)
|
||||||
* The :insert, :append and :change command
|
* The :insert, :append and :change command
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
do_ins_chg(PTR start, char *arg, int mode)
|
do_ins_chg(start, arg, mode)
|
||||||
|
PTR start;
|
||||||
|
char *arg;
|
||||||
|
int mode;
|
||||||
{
|
{
|
||||||
int base;
|
int base;
|
||||||
off_t buffer = BUFFER;
|
off_t buffer = BUFFER;
|
||||||
|
@ -1014,7 +1021,9 @@ clear_marks()
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
do_mark(int mark, PTR addr)
|
do_mark(mark, addr)
|
||||||
|
int mark;
|
||||||
|
PTR addr;
|
||||||
{
|
{
|
||||||
if (mark < 'a' || mark > 'z' || current >= maxpos)
|
if (mark < 'a' || mark > 'z' || current >= maxpos)
|
||||||
return;
|
return;
|
||||||
|
|
55
io.c
55
io.c
|
@ -11,12 +11,10 @@
|
||||||
* 2010-06-02 V 1.3.4
|
* 2010-06-02 V 1.3.4
|
||||||
* 2014-05-03 V 1.4.0
|
* 2014-05-03 V 1.4.0
|
||||||
* 2019-01-27 V 1.4.1
|
* 2019-01-27 V 1.4.1
|
||||||
* 2022-03-09 V 1.4.2
|
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -57,20 +55,6 @@
|
||||||
# include <fcntl.h>
|
# include <fcntl.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
//@ read on linux has a limit of 0x7ffff000 bytes (see `man read`)
|
|
||||||
//@ this function calls recursively read until all `count` characters are read.
|
|
||||||
static ssize_t
|
|
||||||
read_to_end(int fd, void *buf, size_t count) {
|
|
||||||
size_t read_bytes = 0;
|
|
||||||
while(read_bytes < count) {
|
|
||||||
const ssize_t ret = read(fd, ((char*)buf)+read_bytes, count-read_bytes);
|
|
||||||
if(ret <= 0) return ret;
|
|
||||||
read_bytes += ret;
|
|
||||||
}
|
|
||||||
return read_bytes;
|
|
||||||
}
|
|
||||||
|
|
||||||
int filemode;
|
int filemode;
|
||||||
static struct stat buf;
|
static struct stat buf;
|
||||||
static off_t block_read;
|
static off_t block_read;
|
||||||
|
@ -80,7 +64,11 @@ extern char *fname_buf;
|
||||||
|
|
||||||
/*********** Save the patched file ********************/
|
/*********** Save the patched file ********************/
|
||||||
int
|
int
|
||||||
save(char *fname, char *start, char *end, int flags)
|
save(fname, start, end, flags)
|
||||||
|
char *fname;
|
||||||
|
char *start;
|
||||||
|
char *end;
|
||||||
|
int flags;
|
||||||
{
|
{
|
||||||
int fd;
|
int fd;
|
||||||
char *string;
|
char *string;
|
||||||
|
@ -164,7 +152,8 @@ save(char *fname, char *start, char *end, int flags)
|
||||||
|
|
||||||
/* loads a file, returns the filesize */
|
/* loads a file, returns the filesize */
|
||||||
off_t
|
off_t
|
||||||
load(char *fname)
|
load(fname)
|
||||||
|
char *fname;
|
||||||
{
|
{
|
||||||
int fd = -1;
|
int fd = -1;
|
||||||
//char *string;
|
//char *string;
|
||||||
|
@ -272,7 +261,7 @@ load(char *fname)
|
||||||
sysemsg(fname);
|
sysemsg(fname);
|
||||||
filemode = ERROR;
|
filemode = ERROR;
|
||||||
} else {
|
} else {
|
||||||
if ((filesize = read_to_end(fd, mem, block_size)) == 0) {
|
if ((filesize = read(fd, mem, block_size)) == 0) {
|
||||||
sprintf(fname_buf, "\"%s\" Empty file", fname);
|
sprintf(fname_buf, "\"%s\" Empty file", fname);
|
||||||
filemode = ERROR;
|
filemode = ERROR;
|
||||||
} else {
|
} else {
|
||||||
|
@ -289,7 +278,7 @@ load(char *fname)
|
||||||
}
|
}
|
||||||
} else if ((filemode == REGULAR) || (filemode == DIRECTORY)) {
|
} else if ((filemode == REGULAR) || (filemode == DIRECTORY)) {
|
||||||
filesize = buf.st_size;
|
filesize = buf.st_size;
|
||||||
if (read_to_end(fd, mem, filesize) != filesize) {
|
if (read(fd, mem, filesize) != filesize) {
|
||||||
sysemsg(fname);
|
sysemsg(fname);
|
||||||
filemode = ERROR;
|
filemode = ERROR;
|
||||||
}
|
}
|
||||||
|
@ -333,7 +322,8 @@ load(char *fname)
|
||||||
* Needed for DOS version only
|
* Needed for DOS version only
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
bvi_init(char *dir)
|
bvi_init(dir)
|
||||||
|
char *dir;
|
||||||
{
|
{
|
||||||
char *initstr;
|
char *initstr;
|
||||||
char rcpath[MAXCMD];
|
char rcpath[MAXCMD];
|
||||||
|
@ -373,7 +363,8 @@ bvi_init(char *dir)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
enlarge(off_t add)
|
enlarge(add)
|
||||||
|
off_t add;
|
||||||
{
|
{
|
||||||
char *newmem;
|
char *newmem;
|
||||||
off_t savecur, savepag, savemax, saveundo;
|
off_t savecur, savepag, savemax, saveundo;
|
||||||
|
@ -422,7 +413,8 @@ do_shell()
|
||||||
|
|
||||||
#ifndef HAVE_STRDUP
|
#ifndef HAVE_STRDUP
|
||||||
char *
|
char *
|
||||||
strdup(char *s)
|
strdup(s)
|
||||||
|
char *s;
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
size_t n;
|
size_t n;
|
||||||
|
@ -440,7 +432,10 @@ strdup(char *s)
|
||||||
* Copy contents of memory (with possible overlapping).
|
* Copy contents of memory (with possible overlapping).
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
memmove(char *s1, char *s2, size_t n)
|
memmove(s1, s2, n)
|
||||||
|
char *s1;
|
||||||
|
char *s2;
|
||||||
|
size_t n;
|
||||||
{
|
{
|
||||||
bcopy(s2, s1, n);
|
bcopy(s2, s1, n);
|
||||||
return(s1);
|
return(s1);
|
||||||
|
@ -449,7 +444,9 @@ memmove(char *s1, char *s2, size_t n)
|
||||||
|
|
||||||
|
|
||||||
off_t
|
off_t
|
||||||
alloc_buf(off_t n, char **buffer)
|
alloc_buf(n, buffer)
|
||||||
|
off_t n;
|
||||||
|
char **buffer;
|
||||||
{
|
{
|
||||||
if (*buffer == NULL) {
|
if (*buffer == NULL) {
|
||||||
*buffer = (char *)malloc(n);
|
*buffer = (char *)malloc(n);
|
||||||
|
@ -465,7 +462,8 @@ alloc_buf(off_t n, char **buffer)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
addfile(char *fname)
|
addfile(fname)
|
||||||
|
char *fname;
|
||||||
{
|
{
|
||||||
int fd;
|
int fd;
|
||||||
off_t oldsize;
|
off_t oldsize;
|
||||||
|
@ -480,7 +478,7 @@ addfile(char *fname)
|
||||||
}
|
}
|
||||||
oldsize = filesize;
|
oldsize = filesize;
|
||||||
if (enlarge(buf.st_size)) return 1;
|
if (enlarge(buf.st_size)) return 1;
|
||||||
if (read_to_end(fd, mem + filesize, buf.st_size) == -1) {
|
if (read(fd, mem + filesize, buf.st_size) == -1) {
|
||||||
sysemsg(fname);
|
sysemsg(fname);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -490,4 +488,3 @@ addfile(char *fname)
|
||||||
setpage(mem + oldsize);
|
setpage(mem + oldsize);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
59
macro.m4
59
macro.m4
|
@ -1,59 +0,0 @@
|
||||||
AC_CHECK_HEADER
|
|
||||||
(
|
|
||||||
[ncurses.h],
|
|
||||||
[
|
|
||||||
AC_SEARCH_LIBS
|
|
||||||
([initscr], [ncurses],
|
|
||||||
[
|
|
||||||
AC_DEFINE(HAVE_NCURSES_H)
|
|
||||||
AC_SEARCH_LIBS([tputs], [tinfo])
|
|
||||||
],[
|
|
||||||
AC_SEARCH_LIBS
|
|
||||||
(
|
|
||||||
[initscr], [curses],
|
|
||||||
[
|
|
||||||
AC_DEFINE(HAVE_CURSES_H)
|
|
||||||
AC_SEARCH_LIBS([tputs], [tinfo])
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])
|
|
||||||
]
|
|
||||||
)
|
|
||||||
]
|
|
||||||
)
|
|
||||||
],[
|
|
||||||
AC_CHECK_HEADER
|
|
||||||
(
|
|
||||||
[curses.h],
|
|
||||||
[
|
|
||||||
AC_SEARCH_LIBS
|
|
||||||
(
|
|
||||||
[initscr], [curses],
|
|
||||||
[
|
|
||||||
AC_DEFINE(HAVE_CURSES_H)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])
|
|
||||||
]
|
|
||||||
)
|
|
||||||
],[
|
|
||||||
# statt: AC_MSG_ERROR([bvi requires a curses library])
|
|
||||||
AC_CHECK_HEADER
|
|
||||||
(
|
|
||||||
[ncursesw/curses.h],
|
|
||||||
[
|
|
||||||
AC_SEARCH_LIBS
|
|
||||||
(
|
|
||||||
[initscr], [curses],
|
|
||||||
[
|
|
||||||
AC_DEFINE(HAVE_NCURSESW_CURSES_H)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])
|
|
||||||
]
|
|
||||||
)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([bvi requires a curses library])
|
|
||||||
]
|
|
||||||
)
|
|
||||||
]
|
|
||||||
)
|
|
||||||
]
|
|
||||||
)
|
|
|
@ -1 +1 @@
|
||||||
#define VERSION "1.5.0"
|
#define VERSION "1.4.1"
|
||||||
|
|
69
re.c
69
re.c
|
@ -11,10 +11,8 @@
|
||||||
* 2010-06-02 V 1.3.4
|
* 2010-06-02 V 1.3.4
|
||||||
* 2013-08-24 V 1.4.0
|
* 2013-08-24 V 1.4.0
|
||||||
* 2019-01-28 V 1.4.1
|
* 2019-01-28 V 1.4.1
|
||||||
* 2023-03-07 V 1.4.2
|
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -37,11 +35,7 @@
|
||||||
#include "bvi.h"
|
#include "bvi.h"
|
||||||
#include "set.h"
|
#include "set.h"
|
||||||
|
|
||||||
#ifdef __STDC__
|
|
||||||
static int sbracket(int, char *, int);
|
|
||||||
#else
|
|
||||||
static int sbracket();
|
static int sbracket();
|
||||||
#endif
|
|
||||||
|
|
||||||
char act_pat[MAXCMD]; /* found pattern */
|
char act_pat[MAXCMD]; /* found pattern */
|
||||||
char pattern[MAXCMD + 1];
|
char pattern[MAXCMD + 1];
|
||||||
|
@ -53,7 +47,9 @@ char *emptyclass = "Bad character class|Empty byte class '[]' or '[^]' cannot ma
|
||||||
|
|
||||||
|
|
||||||
PTR
|
PTR
|
||||||
bregexec(PTR start, char *scan)
|
bregexec(start, scan)
|
||||||
|
PTR start;
|
||||||
|
char *scan;
|
||||||
{
|
{
|
||||||
char *act;
|
char *act;
|
||||||
int count, test;
|
int count, test;
|
||||||
|
@ -128,7 +124,10 @@ bregexec(PTR start, char *scan)
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sbracket(int start, char *scan, int count)
|
sbracket(start, scan, count)
|
||||||
|
int start;
|
||||||
|
char *scan;
|
||||||
|
int count;
|
||||||
{
|
{
|
||||||
if (*scan++ == '^') {
|
if (*scan++ == '^') {
|
||||||
if (!memchr(scan, start, --count)) return 0;
|
if (!memchr(scan, start, --count)) return 0;
|
||||||
|
@ -140,7 +139,8 @@ sbracket(int start, char *scan, int count)
|
||||||
|
|
||||||
|
|
||||||
PTR
|
PTR
|
||||||
end_word(PTR start)
|
end_word(start)
|
||||||
|
PTR start;
|
||||||
{
|
{
|
||||||
PTR pos;
|
PTR pos;
|
||||||
|
|
||||||
|
@ -154,7 +154,9 @@ end_word(PTR start)
|
||||||
/* wordsearch serves the 'W' and 'w' - command
|
/* wordsearch serves the 'W' and 'w' - command
|
||||||
*/
|
*/
|
||||||
PTR
|
PTR
|
||||||
wordsearch(PTR start, char mode)
|
wordsearch(start, mode)
|
||||||
|
PTR start;
|
||||||
|
char mode;
|
||||||
{
|
{
|
||||||
PTR found;
|
PTR found;
|
||||||
PTR pos;
|
PTR pos;
|
||||||
|
@ -184,7 +186,9 @@ wordsearch(PTR start, char mode)
|
||||||
/* backsearch serves the 'b' and 'B' command
|
/* backsearch serves the 'b' and 'B' command
|
||||||
*/
|
*/
|
||||||
PTR
|
PTR
|
||||||
backsearch(PTR start, char mode)
|
backsearch(start, mode)
|
||||||
|
PTR start;
|
||||||
|
char mode;
|
||||||
{
|
{
|
||||||
PTR pos;
|
PTR pos;
|
||||||
int ccount;
|
int ccount;
|
||||||
|
@ -211,7 +215,11 @@ backsearch(PTR start, char mode)
|
||||||
/* used by :s
|
/* used by :s
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
do_substitution(int delim, char *line, PTR startpos, PTR endpos)
|
do_substitution(delim, line, startpos, endpos)
|
||||||
|
int delim;
|
||||||
|
char *line;
|
||||||
|
PTR startpos;
|
||||||
|
PTR endpos;
|
||||||
{
|
{
|
||||||
int n;
|
int n;
|
||||||
char *found;
|
char *found;
|
||||||
|
@ -304,7 +312,7 @@ do_substitution(int delim, char *line, PTR startpos, PTR endpos)
|
||||||
refresh();
|
refresh();
|
||||||
|
|
||||||
if (global) {
|
if (global) {
|
||||||
if ((undo_count = alloc_buf((off_t)(endpos - startpos), &undo_buf))) {
|
if ((undo_count = alloc_buf(endpos - startpos, &undo_buf))) {
|
||||||
memcpy(undo_buf, startpos + 1, undo_count);
|
memcpy(undo_buf, startpos + 1, undo_count);
|
||||||
}
|
}
|
||||||
undo_start = startpos + 1;
|
undo_start = startpos + 1;
|
||||||
|
@ -342,7 +350,7 @@ AGAIN:
|
||||||
repl_count++;
|
repl_count++;
|
||||||
current_start = pagepos + y * Anzahl + xpos();
|
current_start = pagepos + y * Anzahl + xpos();
|
||||||
if (!global) {
|
if (!global) {
|
||||||
if ((undo_count = alloc_buf((off_t)pat_len, &undo_buf))) {
|
if ((undo_count = alloc_buf(pat_len, &undo_buf))) {
|
||||||
memcpy(undo_buf, current_start, undo_count);
|
memcpy(undo_buf, current_start, undo_count);
|
||||||
}
|
}
|
||||||
undo_start = current_start;
|
undo_start = current_start;
|
||||||
|
@ -367,7 +375,12 @@ SKIP:
|
||||||
* return address found
|
* return address found
|
||||||
*/
|
*/
|
||||||
PTR
|
PTR
|
||||||
searching(int ch, char *line, PTR startpos, PTR endpos, int flag)
|
searching(ch, line, startpos, endpos, flag)
|
||||||
|
int ch;
|
||||||
|
char *line;
|
||||||
|
PTR startpos;
|
||||||
|
PTR endpos;
|
||||||
|
int flag;
|
||||||
{
|
{
|
||||||
char *cmd = NULL;
|
char *cmd = NULL;
|
||||||
PTR found;
|
PTR found;
|
||||||
|
@ -471,7 +484,9 @@ searching(int ch, char *line, PTR startpos, PTR endpos, int flag)
|
||||||
* returns pointer to next character
|
* returns pointer to next character
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
patcpy(char *s1, char *s2, char delim)
|
patcpy(s1, s2, delim)
|
||||||
|
char *s1, *s2;
|
||||||
|
char delim;
|
||||||
{
|
{
|
||||||
while (*s2 != '\0' && *s2 != delim) {
|
while (*s2 != '\0' && *s2 != delim) {
|
||||||
if (*s2 == '\\' && *(s2 + 1) == delim) s2++;
|
if (*s2 == '\\' && *(s2 + 1) == delim) s2++;
|
||||||
|
@ -484,10 +499,14 @@ patcpy(char *s1, char *s2, char delim)
|
||||||
|
|
||||||
|
|
||||||
PTR
|
PTR
|
||||||
fsearch_end(PTR start, PTR end, char *smem, PTR *s_end)
|
fsearch_end(start, end, smem, s_end)
|
||||||
/*
|
/*
|
||||||
fsearch(start, end, smem)
|
fsearch(start, end, smem)
|
||||||
*/
|
*/
|
||||||
|
PTR start;
|
||||||
|
PTR end;
|
||||||
|
char *smem;
|
||||||
|
PTR *s_end;
|
||||||
{
|
{
|
||||||
PTR spos;
|
PTR spos;
|
||||||
|
|
||||||
|
@ -506,7 +525,10 @@ fsearch(start, end, smem)
|
||||||
|
|
||||||
|
|
||||||
PTR
|
PTR
|
||||||
fsearch(PTR start, PTR end, char *smem)
|
fsearch(start, end, smem)
|
||||||
|
PTR start;
|
||||||
|
PTR end;
|
||||||
|
char *smem;
|
||||||
{
|
{
|
||||||
PTR s_end;
|
PTR s_end;
|
||||||
return fsearch_end(start, end, smem, &s_end);
|
return fsearch_end(start, end, smem, &s_end);
|
||||||
|
@ -514,7 +536,10 @@ fsearch(PTR start, PTR end, char *smem)
|
||||||
|
|
||||||
|
|
||||||
PTR
|
PTR
|
||||||
rsearch(PTR start, PTR end, char *smem)
|
rsearch(start, end, smem)
|
||||||
|
PTR start;
|
||||||
|
PTR end;
|
||||||
|
char *smem;
|
||||||
{
|
{
|
||||||
PTR spos;
|
PTR spos;
|
||||||
|
|
||||||
|
@ -534,7 +559,9 @@ rsearch(PTR start, PTR end, char *smem)
|
||||||
* returns NULL on error or default_address, if nothing found
|
* returns NULL on error or default_address, if nothing found
|
||||||
*/
|
*/
|
||||||
PTR
|
PTR
|
||||||
calc_addr(char **pointer, PTR def_addr)
|
calc_addr(pointer, def_addr)
|
||||||
|
char **pointer;
|
||||||
|
PTR def_addr;
|
||||||
{
|
{
|
||||||
PTR addr;
|
PTR addr;
|
||||||
int ch, mark;
|
int ch, mark;
|
||||||
|
|
11
recomp.c
11
recomp.c
|
@ -6,9 +6,8 @@
|
||||||
* 2000-04-25 V 1.3.0 beta
|
* 2000-04-25 V 1.3.0 beta
|
||||||
* 2000-07-12 V 1.3.0 final
|
* 2000-07-12 V 1.3.0 final
|
||||||
* 2019-01-28 V 1.4.1
|
* 2019-01-28 V 1.4.1
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -47,7 +46,9 @@ extern char *emptyclass;
|
||||||
* Compiling an ASCII sequence to a regex string
|
* Compiling an ASCII sequence to a regex string
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
ascii_comp(char *smem, char *pattern)
|
ascii_comp(smem, pattern)
|
||||||
|
char *smem;
|
||||||
|
char *pattern;
|
||||||
{
|
{
|
||||||
char *end;
|
char *end;
|
||||||
char *comp;
|
char *comp;
|
||||||
|
@ -166,7 +167,9 @@ ascii_comp(char *smem, char *pattern)
|
||||||
* Compiling a hex expression to a regex string
|
* Compiling a hex expression to a regex string
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
hex_comp(char *smem, char *pattern)
|
hex_comp(smem, pattern)
|
||||||
|
char *smem;
|
||||||
|
char *pattern;
|
||||||
{
|
{
|
||||||
char *end;
|
char *end;
|
||||||
char *comp;
|
char *comp;
|
||||||
|
|
88
set.c
88
set.c
|
@ -14,9 +14,8 @@
|
||||||
* 2010-06-02 V 1.2.4
|
* 2010-06-02 V 1.2.4
|
||||||
* 2014-09-30 V 1.4.0
|
* 2014-09-30 V 1.4.0
|
||||||
* 2019-01-22 V 1.4.1
|
* 2019-01-22 V 1.4.1
|
||||||
* 2025-07-19 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* gerhard@puon.at
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
@ -42,7 +41,7 @@ static char buf[MAXCMD+1];
|
||||||
|
|
||||||
struct param params[] = {
|
struct param params[] = {
|
||||||
{ "autowrite", "aw", FALSE, "", P_BOOL },
|
{ "autowrite", "aw", FALSE, "", P_BOOL },
|
||||||
{ "columns", "cm", 0, "", P_NUM },
|
{ "columns", "cm", 16, "", P_NUM },
|
||||||
{ "errorbells", "eb", FALSE, "", P_BOOL },
|
{ "errorbells", "eb", FALSE, "", P_BOOL },
|
||||||
{ "ignorecase", "ic", FALSE, "", P_BOOL },
|
{ "ignorecase", "ic", FALSE, "", P_BOOL },
|
||||||
{ "magic", "ma", TRUE, "", P_BOOL },
|
{ "magic", "ma", TRUE, "", P_BOOL },
|
||||||
|
@ -54,7 +53,7 @@ struct param params[] = {
|
||||||
{ "term", "term", 0, "", P_TEXT },
|
{ "term", "term", 0, "", P_TEXT },
|
||||||
{ "terse", "terse", FALSE, "", P_BOOL },
|
{ "terse", "terse", FALSE, "", P_BOOL },
|
||||||
{ "unixstyle", "us", FALSE, "", P_BOOL },
|
{ "unixstyle", "us", FALSE, "", P_BOOL },
|
||||||
{ "window", "window", 0, "", P_NUM },
|
{ "window", "window", 25, "", P_NUM },
|
||||||
{ "wordlength", "wl", 4, "", P_NUM },
|
{ "wordlength", "wl", 4, "", P_NUM },
|
||||||
{ "wrapscan", "ws", TRUE, "", P_BOOL },
|
{ "wrapscan", "ws", TRUE, "", P_BOOL },
|
||||||
{ "highlight", "hl", TRUE, "", P_BOOL },
|
{ "highlight", "hl", TRUE, "", P_BOOL },
|
||||||
|
@ -66,16 +65,15 @@ struct param params[] = {
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
doset(char *arg)
|
doset(arg)
|
||||||
|
char *arg; /* parameter string */
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char *s;
|
char *s;
|
||||||
int did_window = FALSE;
|
int did_window = FALSE;
|
||||||
int state = TRUE; /* new state of boolean parms. */
|
int state = TRUE; /* new state of boolean parms. */
|
||||||
char string[80];
|
char string[80];
|
||||||
off_t val;
|
|
||||||
|
|
||||||
if (arg == NULL) {
|
if (arg == NULL) {
|
||||||
showparms(FALSE);
|
showparms(FALSE);
|
||||||
|
@ -113,38 +111,20 @@ doset(char *arg)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (!strcmp(params[i].fullname, "term")) {
|
if (!strcmp(params[i].fullname, "term")) {
|
||||||
emsg("Can't change@type of terminal from within bvi");
|
emsg("Can't change type of terminal from within bvi");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
if (params[i].flags & P_NUM) {
|
if (params[i].flags & P_NUM) {
|
||||||
if ((i == P_LI) || (i == P_OF) || (i == P_CM)) did_window++;
|
if ((i == P_LI) || (i == P_OF)) did_window++;
|
||||||
if (arg[strlen(s)] != '=' || state == FALSE) {
|
if (arg[strlen(s)] != '=' || state == FALSE) {
|
||||||
sprintf(string, "Option %s is not a toggle", params[i].fullname);
|
sprintf(string, "Option %s is not a toggle",
|
||||||
|
params[i].fullname);
|
||||||
emsg(string);
|
emsg(string);
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
s = arg + strlen(s) + 1;
|
s = arg + strlen(s) + 1;
|
||||||
val = strtoll(s, &s, 0);
|
params[i].nvalue = strtoll(s, &s, 0);
|
||||||
if ((i == P_CM || i == P_LI) && (!strcmp("auto", s) || (val == 0))) {
|
|
||||||
if (i == P_CM) {
|
|
||||||
params[i].nvalue = 0;
|
|
||||||
Anzahl = ((COLS - AnzAdd - space) / 4);
|
|
||||||
} else {
|
|
||||||
params[i].nvalue = 0;
|
|
||||||
maxy = LINES - 1;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
params[i].nvalue = val;
|
|
||||||
if (i == P_CM) {
|
|
||||||
Anzahl = val;
|
|
||||||
} else {
|
|
||||||
maxy = val;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
params[i].flags |= P_CHANGED;
|
params[i].flags |= P_CHANGED;
|
||||||
if (i == P_LI) params[P_SS].nvalue = val / 2;
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(__MSDOS__) && !defined(DJGPP)
|
#if defined(__MSDOS__) && !defined(DJGPP)
|
||||||
if (i == P_CO) {
|
if (i == P_CO) {
|
||||||
textcolor(P(P_CO) & 0x07);
|
textcolor(P(P_CO) & 0x07);
|
||||||
|
@ -154,23 +134,22 @@ doset(char *arg)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if (i == P_CM) {
|
if (i == P_CM) {
|
||||||
/*
|
|
||||||
if (((COLS - AnzAdd - 1) / 4) >= P(P_CM)) {
|
if (((COLS - AnzAdd - 1) / 4) >= P(P_CM)) {
|
||||||
Anzahl = P(P_CM);
|
Anzahl = P(P_CM);
|
||||||
} else {
|
} else {
|
||||||
Anzahl = ((COLS - AnzAdd - 1) / 4);
|
Anzahl = P(P_CM) = ((COLS - AnzAdd - 1) / 4);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
maxx = Anzahl * 4 + AnzAdd + 1;
|
maxx = Anzahl * 4 + AnzAdd + 1;
|
||||||
Anzahl3 = Anzahl * 3;
|
Anzahl3 = Anzahl * 3;
|
||||||
status = Anzahl3 + Anzahl - statsize;
|
status = Anzahl3 + Anzahl - 17;
|
||||||
screen = Anzahl * (maxy - 1);
|
screen = Anzahl * (maxy - 1);
|
||||||
|
did_window++;
|
||||||
stuffin("H"); /* set cursor at HOME */
|
stuffin("H"); /* set cursor at HOME */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else { /* boolean */
|
} else { /* boolean */
|
||||||
if (arg[strlen(s)] == '=') {
|
if (arg[strlen(s)] == '=') {
|
||||||
emsg("Invalid set@of boolean parameter");
|
emsg("Invalid set of boolean parameter");
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
params[i].nvalue = state;
|
params[i].nvalue = state;
|
||||||
|
@ -190,10 +169,7 @@ doset(char *arg)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (did_window) {
|
if (did_window) {
|
||||||
/*
|
|
||||||
maxy = P(P_LI) - 1;
|
maxy = P(P_LI) - 1;
|
||||||
maxy = LINES - 1;
|
|
||||||
*/
|
|
||||||
new_screen();
|
new_screen();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -203,33 +179,28 @@ doset(char *arg)
|
||||||
|
|
||||||
/* show ALL parameters */
|
/* show ALL parameters */
|
||||||
void
|
void
|
||||||
showparms(int all)
|
showparms(all)
|
||||||
|
int all;
|
||||||
{
|
{
|
||||||
struct param *p;
|
struct param *p;
|
||||||
int n, i;
|
int n;
|
||||||
|
|
||||||
statusflag = 0;
|
|
||||||
n = 2;
|
n = 2;
|
||||||
i = -1;
|
|
||||||
msg("Parameters:\n");
|
msg("Parameters:\n");
|
||||||
for (p = ¶ms[0]; p->fullname[0] != '\0' ;p++) {
|
for (p = ¶ms[0]; p->fullname[0] != '\0' ;p++) {
|
||||||
i++;
|
|
||||||
if (!all && ((p->flags & P_CHANGED) == 0))
|
if (!all && ((p->flags & P_CHANGED) == 0))
|
||||||
continue;
|
continue;
|
||||||
if (p->flags & P_BOOL) {
|
if (p->flags & P_BOOL)
|
||||||
sprintf(buf, " %s%s\n", (p->nvalue ? " " : "no"), p->fullname);
|
sprintf(buf, " %s%s\n",
|
||||||
} else if (p->flags & P_TEXT) {
|
(p->nvalue ? " " : "no"), p->fullname);
|
||||||
|
else if (p->flags & P_TEXT)
|
||||||
sprintf(buf, " %s=%s\n", p->fullname, p->svalue);
|
sprintf(buf, " %s=%s\n", p->fullname, p->svalue);
|
||||||
} else {
|
else
|
||||||
if ((p->nvalue == 0) && (i == P_CM || i == P_LI)) {
|
|
||||||
sprintf(buf, " %s=auto\n", p->fullname);
|
|
||||||
} else {
|
|
||||||
sprintf(buf, " %s=%lld\n", p->fullname, (long long)p->nvalue);
|
sprintf(buf, " %s=%lld\n", p->fullname, (long long)p->nvalue);
|
||||||
}
|
|
||||||
}
|
|
||||||
msg(buf);
|
msg(buf);
|
||||||
n++;
|
n++;
|
||||||
if (n == maxy) {
|
if (n == params[P_LI].nvalue) {
|
||||||
if (wait_return(FALSE)) return;
|
if (wait_return(FALSE)) return;
|
||||||
n = 1;
|
n = 1;
|
||||||
}
|
}
|
||||||
|
@ -240,7 +211,8 @@ showparms(int all)
|
||||||
|
|
||||||
/* reads the init file (.bvirc) */
|
/* reads the init file (.bvirc) */
|
||||||
int
|
int
|
||||||
read_rc(char *fn)
|
read_rc(fn)
|
||||||
|
char *fn;
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -258,7 +230,9 @@ read_rc(char *fn)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
do_logic(int mode, char *str)
|
do_logic(mode, str)
|
||||||
|
int mode;
|
||||||
|
char *str;
|
||||||
{
|
{
|
||||||
int a, b;
|
int a, b;
|
||||||
int value;
|
int value;
|
||||||
|
@ -344,7 +318,9 @@ do_logic(int mode, char *str)
|
||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
getcmdstr(char *p, int x)
|
getcmdstr(p, x)
|
||||||
|
char *p;
|
||||||
|
int x;
|
||||||
{
|
{
|
||||||
int c;
|
int c;
|
||||||
int i, n;
|
int i, n;
|
||||||
|
|
5
set.h
5
set.h
|
@ -2,8 +2,8 @@
|
||||||
*
|
*
|
||||||
* NOTE: Edit this file with tabstop=4 !
|
* NOTE: Edit this file with tabstop=4 !
|
||||||
*
|
*
|
||||||
* Copyright 1996-2025 by Gerhard Buergmann
|
* Copyright 1996-2019 by Gerhard Buergmann
|
||||||
* gerhard@puon.at
|
* Gerhard.Buergmann@puon.at
|
||||||
*
|
*
|
||||||
* 1998-03-14 V 1.0.0
|
* 1998-03-14 V 1.0.0
|
||||||
* 1999-01-14 V 1.1.0
|
* 1999-01-14 V 1.1.0
|
||||||
|
@ -14,7 +14,6 @@
|
||||||
* 2010-06-02 V 1.3.4
|
* 2010-06-02 V 1.3.4
|
||||||
* 2013-08-23 V 1.4.0
|
* 2013-08-23 V 1.4.0
|
||||||
* 2019-01-22 V 1.4.1
|
* 2019-01-22 V 1.4.1
|
||||||
* 2025-05-24 V 1.5.0
|
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of the GNU General Public License as published by the
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
|
442
tags
442
tags
|
@ -4,14 +4,14 @@
|
||||||
!_TAG_PROGRAM_NAME Exuberant Ctags //
|
!_TAG_PROGRAM_NAME Exuberant Ctags //
|
||||||
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
|
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
|
||||||
!_TAG_PROGRAM_VERSION 5.9~svn20110310 //
|
!_TAG_PROGRAM_VERSION 5.9~svn20110310 //
|
||||||
AND bvi.h 100;" d
|
AND bvi.h 90;" d
|
||||||
ANSI bmore.h 108;" d
|
ANSI bmore.h 104;" d
|
||||||
ANSI bvi.h 130;" d
|
ANSI bvi.h 120;" d
|
||||||
APPEND comm.c 53;" d file:
|
APPEND comm.c 51;" d file:
|
||||||
APPEND comm.c 56;" d file:
|
APPEND comm.c 54;" d file:
|
||||||
ASCII bmore.h 87;" d
|
ASCII bmore.h 83;" d
|
||||||
ASCII bvi.h 107;" d
|
ASCII bvi.h 97;" d
|
||||||
ASCII_DEL bvi.h 116;" d
|
ASCII_DEL bvi.h 106;" d
|
||||||
A_ATTRIBUTES doscur.h 56;" d
|
A_ATTRIBUTES doscur.h 56;" d
|
||||||
A_BLINK doscur.h 54;" d
|
A_BLINK doscur.h 54;" d
|
||||||
A_BOLD doscur.h 52;" d
|
A_BOLD doscur.h 52;" d
|
||||||
|
@ -24,60 +24,59 @@ AnzAdd bvi.c /^int AnzAdd, Anzahl, Anzahl3;$/;" v
|
||||||
Anzahl bvi.c /^int AnzAdd, Anzahl, Anzahl3;$/;" v
|
Anzahl bvi.c /^int AnzAdd, Anzahl, Anzahl3;$/;" v
|
||||||
Anzahl3 bvi.c /^int AnzAdd, Anzahl, Anzahl3;$/;" v
|
Anzahl3 bvi.c /^int AnzAdd, Anzahl, Anzahl3;$/;" v
|
||||||
Ausgabe_Datei bvi.c /^FILE *Ausgabe_Datei;$/;" v
|
Ausgabe_Datei bvi.c /^FILE *Ausgabe_Datei;$/;" v
|
||||||
BACKWARD bmore.h 89;" d
|
BACKWARD bmore.h 85;" d
|
||||||
BACKWARD bvi.h 109;" d
|
BACKWARD bvi.h 99;" d
|
||||||
BLOCK_BEGIN bvi.h /^ BLOCK_BEGIN = 1,$/;" e enum:_block_datum
|
BLOCK_BEGIN bvi.h /^ BLOCK_BEGIN = 1,$/;" e enum:_block_datum
|
||||||
BLOCK_END bvi.h /^ BLOCK_END = 2,$/;" e enum:_block_datum
|
BLOCK_END bvi.h /^ BLOCK_END = 2,$/;" e enum:_block_datum
|
||||||
BLOCK_LEN bvi.h /^ BLOCK_LEN = 4$/;" e enum:_block_datum
|
BLOCK_LEN bvi.h /^ BLOCK_LEN = 4$/;" e enum:_block_datum
|
||||||
BLOCK_SPECIAL bmore.h 79;" d
|
BLOCK_SPECIAL bmore.h 75;" d
|
||||||
BLOCK_SPECIAL bvi.h 76;" d
|
BLOCK_SPECIAL bvi.h 66;" d
|
||||||
BS bmore.h 92;" d
|
BS bmore.h 88;" d
|
||||||
BS bvi.h 112;" d
|
BS bvi.h 102;" d
|
||||||
BUFFER bmore.h 120;" d
|
BUFFER bmore.h 116;" d
|
||||||
BUFFER bvi.h 144;" d
|
BUFFER bvi.h 134;" d
|
||||||
BVICTRL bmore.h 96;" d
|
BVICTRL bmore.h 92;" d
|
||||||
BVICTRL bvi.h 115;" d
|
BVICTRL bvi.h 105;" d
|
||||||
CHARACTER_SPECIAL bmore.h 78;" d
|
CHARACTER_SPECIAL bmore.h 74;" d
|
||||||
CHARACTER_SPECIAL bvi.h 75;" d
|
CHARACTER_SPECIAL bvi.h 65;" d
|
||||||
CMDLNG bvi.h 118;" d
|
CMDLNG bvi.h 108;" d
|
||||||
CMDSZ comm.c 59;" d file:
|
CMDSZ comm.c 57;" d file:
|
||||||
COLS dosio.c /^int COLS = 80;$/;" v
|
COLS dosio.c /^int COLS = 80;$/;" v
|
||||||
CR bmore.h 90;" d
|
CR bmore.h 86;" d
|
||||||
CR bvi.h 110;" d
|
CR bvi.h 100;" d
|
||||||
DELIM bmore.h 111;" d
|
DELIM bmore.h 107;" d
|
||||||
DELIM bmore.h 116;" d
|
DELIM bmore.h 112;" d
|
||||||
DELIM bvi.h 133;" d
|
DELIM bvi.h 123;" d
|
||||||
DELIM bvi.h 140;" d
|
DELIM bvi.h 130;" d
|
||||||
DIRECTORY bmore.h 77;" d
|
DIRECTORY bmore.h 73;" d
|
||||||
DIRECTORY bvi.h 74;" d
|
DIRECTORY bvi.h 64;" d
|
||||||
ECHO dosio.c /^int ECHO = TRUE;$/;" v
|
ECHO dosio.c /^int ECHO = TRUE;$/;" v
|
||||||
END bmore.h 83;" d
|
END bmore.h 79;" d
|
||||||
END bvi.h 80;" d
|
END bvi.h 70;" d
|
||||||
ERR doscur.h 147;" d
|
ERR doscur.h 147;" d
|
||||||
ERROR bmore.h 74;" d
|
ERROR bmore.h 70;" d
|
||||||
ERROR bvi.h 71;" d
|
ERROR bvi.h 61;" d
|
||||||
ESC bmore.h 93;" d
|
ESC bmore.h 89;" d
|
||||||
ESC bvi.h 113;" d
|
ESC bvi.h 103;" d
|
||||||
ESC doscur.h 31;" d
|
ESC doscur.h 31;" d
|
||||||
FALSE bmore.h 104;" d
|
FALSE bmore.h 100;" d
|
||||||
FALSE bvi.h 126;" d
|
FALSE bvi.h 116;" d
|
||||||
FALSE doscur.h 29;" d
|
FALSE doscur.h 29;" d
|
||||||
FORWARD bmore.h 88;" d
|
FORWARD bmore.h 84;" d
|
||||||
FORWARD bvi.h 108;" d
|
FORWARD bvi.h 98;" d
|
||||||
HAVE_CURSES_H acconfig.h 5;" d
|
HAVE_CURSES_H acconfig.h 5;" d
|
||||||
HAVE_FCNTL_H dosconf.h 40;" d
|
HAVE_FCNTL_H dosconf.h 40;" d
|
||||||
HAVE_LOCALE_H dosconf.h 44;" d
|
HAVE_LOCALE_H dosconf.h 44;" d
|
||||||
HAVE_MEMMOVE dosconf.h 31;" d
|
HAVE_MEMMOVE dosconf.h 31;" d
|
||||||
HAVE_NCURSESW_CURSES_H acconfig.h 7;" d
|
|
||||||
HAVE_NCURSES_H acconfig.h 3;" d
|
HAVE_NCURSES_H acconfig.h 3;" d
|
||||||
HAVE_NCURSES_TERM_H acconfig.h 13;" d
|
HAVE_NCURSES_TERM_H acconfig.h 11;" d
|
||||||
HAVE_STRDUP dosconf.h 34;" d
|
HAVE_STRDUP dosconf.h 34;" d
|
||||||
HAVE_STRTOL dosconf.h 37;" d
|
HAVE_STRTOL dosconf.h 37;" d
|
||||||
|
HELPFILE bmore.c 43;" d file:
|
||||||
HELPFILE bmore.c 45;" d file:
|
HELPFILE bmore.c 45;" d file:
|
||||||
HELPFILE bmore.c 47;" d file:
|
HEX bvi.h 96;" d
|
||||||
HEX bvi.h 106;" d
|
|
||||||
Home bm_unix.c /^char *Home; \/* go to home *\/$/;" v
|
Home bm_unix.c /^char *Home; \/* go to home *\/$/;" v
|
||||||
JOEHTG bvi.h 45;" d
|
JOEHTG bvi.h 43;" d
|
||||||
KEY_BACKSPACE doscur.h 42;" d
|
KEY_BACKSPACE doscur.h 42;" d
|
||||||
KEY_DC doscur.h 45;" d
|
KEY_DC doscur.h 45;" d
|
||||||
KEY_DOWN doscur.h 34;" d
|
KEY_DOWN doscur.h 34;" d
|
||||||
|
@ -94,120 +93,120 @@ KEY_RETURN doscur.h 40;" d
|
||||||
KEY_RIGHT doscur.h 37;" d
|
KEY_RIGHT doscur.h 37;" d
|
||||||
KEY_UP doscur.h 35;" d
|
KEY_UP doscur.h 35;" d
|
||||||
LINES dosio.c /^int LINES = 25;$/;" v
|
LINES dosio.c /^int LINES = 25;$/;" v
|
||||||
LROTATE bvi.h 98;" d
|
LROTATE bvi.h 88;" d
|
||||||
LSHIFT bvi.h 96;" d
|
LSHIFT bvi.h 86;" d
|
||||||
MAXCMD bmore.h 119;" d
|
MAXCMD bmore.h 115;" d
|
||||||
MAXCMD bvi.h 143;" d
|
MAXCMD bvi.h 133;" d
|
||||||
MAXNAME comm.c 60;" d file:
|
MAXNAME comm.c 58;" d file:
|
||||||
MAX_ONE_ARG comm.c 65;" d file:
|
MAX_ONE_ARG comm.c 63;" d file:
|
||||||
MAX_ONE_FILE comm.c 67;" d file:
|
MAX_ONE_FILE comm.c 65;" d file:
|
||||||
NEED_PUTC_CHAR acconfig.h 11;" d
|
NEED_PUTC_CHAR acconfig.h 9;" d
|
||||||
NEED_PUTC_CHAR bm_unix.c 54;" d file:
|
NEED_PUTC_CHAR bm_unix.c 52;" d file:
|
||||||
NEG bvi.h 103;" d
|
NEG bvi.h 93;" d
|
||||||
NEW bmore.h 76;" d
|
NEW bmore.h 72;" d
|
||||||
NEW bvi.h 73;" d
|
NEW bvi.h 63;" d
|
||||||
NL bmore.h 91;" d
|
NL bmore.h 87;" d
|
||||||
NL bvi.h 111;" d
|
NL bvi.h 101;" d
|
||||||
NODEL dosio.c /^int NODEL = FALSE;$/;" v
|
NODEL dosio.c /^int NODEL = FALSE;$/;" v
|
||||||
NOT bvi.h 104;" d
|
NOT bvi.h 94;" d
|
||||||
NO_ADDR comm.c 62;" d file:
|
NO_ADDR comm.c 60;" d file:
|
||||||
NO_ARG comm.c 63;" d file:
|
NO_ARG comm.c 61;" d file:
|
||||||
NO_SYSERRL acconfig.h 9;" d
|
NO_SYSERRL acconfig.h 7;" d
|
||||||
NULL bmore.h 99;" d
|
NULL bmore.h 95;" d
|
||||||
NULL bvi.h 121;" d
|
NULL bvi.h 111;" d
|
||||||
OFF_T_MAX io.c 49;" d file:
|
OFF_T_MAX io.c 47;" d file:
|
||||||
ONE bmore.h 84;" d
|
ONE bmore.h 80;" d
|
||||||
ONE bvi.h 81;" d
|
ONE bvi.h 71;" d
|
||||||
ONE_ARG comm.c 64;" d file:
|
ONE_ARG comm.c 62;" d file:
|
||||||
ONE_FILE comm.c 66;" d file:
|
ONE_FILE comm.c 64;" d file:
|
||||||
OR bvi.h 101;" d
|
OR bvi.h 91;" d
|
||||||
P set.h 78;" d
|
P set.h 77;" d
|
||||||
PARTIAL bmore.h 80;" d
|
PARTIAL bmore.h 76;" d
|
||||||
PARTIAL bvi.h 77;" d
|
PARTIAL bvi.h 67;" d
|
||||||
|
PRINTF bmore.c 38;" d file:
|
||||||
PRINTF bmore.c 40;" d file:
|
PRINTF bmore.c 40;" d file:
|
||||||
PRINTF bmore.c 42;" d file:
|
PTR bmore.h 105;" d
|
||||||
PTR bmore.h 109;" d
|
PTR bmore.h 111;" d
|
||||||
PTR bmore.h 115;" d
|
PTR bvi.h 121;" d
|
||||||
PTR bvi.h 131;" d
|
PTR bvi.h 129;" d
|
||||||
PTR bvi.h 139;" d
|
P_AW set.h 54;" d
|
||||||
P_AW set.h 55;" d
|
P_BOOL set.h 42;" d
|
||||||
P_BOOL set.h 43;" d
|
P_CHANGED set.h 45;" d
|
||||||
P_CHANGED set.h 46;" d
|
P_CM set.h 55;" d
|
||||||
P_CM set.h 56;" d
|
P_CO set.h 72;" d
|
||||||
P_CO set.h 73;" d
|
P_EB set.h 56;" d
|
||||||
P_EB set.h 57;" d
|
P_HL set.h 70;" d
|
||||||
P_HL set.h 71;" d
|
P_IC set.h 57;" d
|
||||||
P_IC set.h 58;" d
|
P_LI set.h 67;" d
|
||||||
P_LI set.h 68;" d
|
P_MA set.h 58;" d
|
||||||
P_MA set.h 59;" d
|
P_MM set.h 59;" d
|
||||||
P_MM set.h 60;" d
|
P_MO set.h 63;" d
|
||||||
P_MO set.h 64;" d
|
P_NUM set.h 43;" d
|
||||||
P_NUM set.h 44;" d
|
P_OF set.h 60;" d
|
||||||
P_OF set.h 61;" d
|
P_RE set.h 71;" d
|
||||||
P_RE set.h 72;" d
|
P_RO set.h 61;" d
|
||||||
P_RO set.h 62;" d
|
P_SS set.h 62;" d
|
||||||
P_SS set.h 63;" d
|
P_TE set.h 65;" d
|
||||||
P_TE set.h 66;" d
|
P_TEXT set.h 44;" d
|
||||||
P_TEXT set.h 45;" d
|
P_TT set.h 64;" d
|
||||||
P_TT set.h 65;" d
|
P_US set.h 66;" d
|
||||||
P_US set.h 67;" d
|
P_WL set.h 68;" d
|
||||||
P_WL set.h 69;" d
|
P_WS set.h 69;" d
|
||||||
P_WS set.h 70;" d
|
REGULAR bmore.h 71;" d
|
||||||
REGULAR bmore.h 75;" d
|
REGULAR bvi.h 62;" d
|
||||||
REGULAR bvi.h 72;" d
|
REPLACE bmore.h 91;" d
|
||||||
REPLACE bmore.h 95;" d
|
RROTATE bvi.h 89;" d
|
||||||
RROTATE bvi.h 99;" d
|
RSHIFT bvi.h 87;" d
|
||||||
RSHIFT bvi.h 97;" d
|
SEARCH bmore.h 90;" d
|
||||||
SEARCH bmore.h 94;" d
|
SEARCH bvi.h 104;" d
|
||||||
SEARCH bvi.h 114;" d
|
SKIP_WHITE bvi.h 136;" d
|
||||||
SKIP_WHITE bvi.h 146;" d
|
STAR bmore.h 81;" d
|
||||||
STAR bmore.h 85;" d
|
STAR bvi.h 72;" d
|
||||||
STAR bvi.h 82;" d
|
|
||||||
STDC_HEADERS dosconf.h 28;" d
|
STDC_HEADERS dosconf.h 28;" d
|
||||||
S_GLOBAL bvi.h 93;" d
|
S_GLOBAL bvi.h 83;" d
|
||||||
S_ISBLK bvi.h 210;" d
|
S_ISBLK bvi.h 198;" d
|
||||||
S_ISCHR bvi.h 209;" d
|
S_ISCHR bvi.h 197;" d
|
||||||
S_ISDIR bvi.h 208;" d
|
S_ISDIR bvi.h 196;" d
|
||||||
S_ISFIFO bvi.h 212;" d
|
S_ISFIFO bvi.h 200;" d
|
||||||
S_ISREG bvi.h 211;" d
|
S_ISREG bvi.h 199;" d
|
||||||
TBUFSIZ bm_dos.c 32;" d file:
|
TBUFSIZ bm_dos.c 32;" d file:
|
||||||
TBUFSIZ bm_unix.c 34;" d file:
|
TBUFSIZ bm_unix.c 32;" d file:
|
||||||
TRUE bmore.h 103;" d
|
TRUE bmore.h 99;" d
|
||||||
TRUE bvi.h 125;" d
|
TRUE bvi.h 115;" d
|
||||||
TRUE doscur.h 28;" d
|
TRUE doscur.h 28;" d
|
||||||
U_APPEND bvi.h 90;" d
|
U_APPEND bvi.h 80;" d
|
||||||
U_BACK bvi.h 89;" d
|
U_BACK bvi.h 79;" d
|
||||||
U_DELETE bvi.h 88;" d
|
U_DELETE bvi.h 78;" d
|
||||||
U_EDIT bvi.h 85;" d
|
U_EDIT bvi.h 75;" d
|
||||||
U_INSERT bvi.h 87;" d
|
U_INSERT bvi.h 77;" d
|
||||||
U_TILDE bvi.h 91;" d
|
U_TILDE bvi.h 81;" d
|
||||||
U_TRUNC bvi.h 86;" d
|
U_TRUNC bvi.h 76;" d
|
||||||
VERSION patchlevel.h 1;" d
|
VERSION patchlevel.h 1;" d
|
||||||
WINDOW doscur.h 60;" d
|
WINDOW doscur.h 60;" d
|
||||||
WRITE comm.c 52;" d file:
|
WRITE comm.c 50;" d file:
|
||||||
WRITE comm.c 55;" d file:
|
WRITE comm.c 53;" d file:
|
||||||
XOR bvi.h 102;" d
|
XOR bvi.h 92;" d
|
||||||
_block_datum bvi.h /^typedef enum _block_datum {$/;" g
|
_block_datum bvi.h /^typedef enum _block_datum {$/;" g
|
||||||
act_pat re.c /^char act_pat[MAXCMD]; \/* found pattern *\/$/;" v
|
act_pat re.c /^char act_pat[MAXCMD]; \/* found pattern *\/$/;" v
|
||||||
addch doscur.h 95;" d
|
addch doscur.h 95;" d
|
||||||
addfile dosio.c /^addfile(char *fname)$/;" f
|
addfile dosio.c /^addfile(char *fname)$/;" f
|
||||||
addfile io.c /^addfile(char *fname)$/;" f
|
addfile io.c /^addfile(fname)$/;" f
|
||||||
addr_flag comm.c /^int addr_flag;$/;" v
|
addr_flag comm.c /^int addr_flag;$/;" v
|
||||||
addr_form bmore.c /^char addr_form[15];$/;" v
|
addr_form bmore.c /^char addr_form[15];$/;" v
|
||||||
addr_form bvi.c /^char addr_form[15];$/;" v
|
addr_form bvi.c /^char addr_form[15];$/;" v
|
||||||
addstr doscur.h 99;" d
|
addstr doscur.h 99;" d
|
||||||
again recomp.c /^int again = 0;$/;" v
|
again recomp.c /^int again = 0;$/;" v
|
||||||
alloc_buf dosio.c /^alloc_buf(off_t n, char **buffer)$/;" f
|
alloc_buf dosio.c /^alloc_buf(off_t n, char **buffer)$/;" f
|
||||||
alloc_buf io.c /^alloc_buf(off_t n, char **buffer)$/;" f
|
alloc_buf io.c /^alloc_buf(n, buffer)$/;" f
|
||||||
altfile comm.c /^static char *altfile = NULL; \/* alternate file *\/$/;" v file:
|
altfile comm.c /^static char *altfile = NULL; \/* alternate file *\/$/;" v file:
|
||||||
ambigous comm.c /^char *ambigous = "Ambiguous|Too many file names";$/;" v
|
ambigous comm.c /^char *ambigous = "Ambigous|Too many file names";$/;" v
|
||||||
ambvalue comm.c /^char *ambvalue = "Ambiguous|Too many values";$/;" v
|
ambvalue comm.c /^char *ambvalue = "Ambigous|Too many values";$/;" v
|
||||||
arrnum bmore.c /^int arrnum = 0;$/;" v
|
arrnum bmore.c /^int arrnum = 0;$/;" v
|
||||||
arrnum bvi.c /^int arrnum = 0;$/;" v
|
arrnum bvi.c /^int arrnum = 0;$/;" v
|
||||||
ascii_comp recomp.c /^ascii_comp(char *smem, char *pattern)$/;" f
|
ascii_comp recomp.c /^ascii_comp(smem, pattern)$/;" f
|
||||||
ascii_flag bmore.c /^int ascii_flag = 0;$/;" v
|
ascii_flag bmore.c /^int ascii_flag = 0;$/;" v
|
||||||
attrset dosio.c /^attrset(int attr)$/;" f
|
attrset dosio.c /^attrset(int attr)$/;" f
|
||||||
backsearch re.c /^backsearch(PTR start, char mode)$/;" f
|
backsearch re.c /^backsearch(start, mode)$/;" f
|
||||||
beep doscur.h 76;" d
|
beep doscur.h 76;" d
|
||||||
block_begin bvi.c /^off_t block_begin, block_end, block_size;$/;" v
|
block_begin bvi.c /^off_t block_begin, block_end, block_size;$/;" v
|
||||||
block_datum bvi.h /^} block_datum;$/;" t typeref:enum:_block_datum
|
block_datum bvi.h /^} block_datum;$/;" t typeref:enum:_block_datum
|
||||||
|
@ -217,9 +216,9 @@ block_read io.c /^static off_t block_read;$/;" v file:
|
||||||
block_size bvi.c /^off_t block_begin, block_end, block_size;$/;" v
|
block_size bvi.c /^off_t block_begin, block_end, block_size;$/;" v
|
||||||
bmbeep bmore.c /^bmbeep() {$/;" f
|
bmbeep bmore.c /^bmbeep() {$/;" f
|
||||||
bmore_search_pat bmore.c /^char bmore_search_pat[BUFFER]; \/* \/ or ? command *\/$/;" v
|
bmore_search_pat bmore.c /^char bmore_search_pat[BUFFER]; \/* \/ or ? command *\/$/;" v
|
||||||
bmregexec bmore.c /^bmregexec(char *scan)$/;" f
|
bmregexec bmore.c /^bmregexec(scan)$/;" f
|
||||||
bmsearch bmore.c /^bmsearch(int ch)$/;" f
|
bmsearch bmore.c /^bmsearch(ch)$/;" f
|
||||||
bregexec re.c /^bregexec(PTR start, char *scan)$/;" f
|
bregexec re.c /^bregexec(start, scan)$/;" f
|
||||||
buf comm.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
buf comm.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
||||||
buf dosio.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
buf dosio.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
||||||
buf io.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
buf io.c /^static struct stat buf;$/;" v typeref:struct:stat file:
|
||||||
|
@ -227,15 +226,15 @@ buf set.c /^static char buf[MAXCMD+1];$/;" v file:
|
||||||
buffer1 bmore.c /^char buffer1[MAXCMD], buffer2[MAXCMD];$/;" v
|
buffer1 bmore.c /^char buffer1[MAXCMD], buffer2[MAXCMD];$/;" v
|
||||||
buffer2 bmore.c /^char buffer1[MAXCMD], buffer2[MAXCMD];$/;" v
|
buffer2 bmore.c /^char buffer1[MAXCMD], buffer2[MAXCMD];$/;" v
|
||||||
bvi_init dosio.c /^bvi_init(char *dir)$/;" f
|
bvi_init dosio.c /^bvi_init(char *dir)$/;" f
|
||||||
bvi_init io.c /^bvi_init(char *dir)$/;" f
|
bvi_init io.c /^bvi_init(dir)$/;" f
|
||||||
bytepos bmore.c /^off_t bytepos, oldpos;$/;" v
|
bytepos bmore.c /^off_t bytepos, oldpos;$/;" v
|
||||||
c_argc comm.c /^static int c_argc = 0;$/;" v file:
|
c_argc comm.c /^static int c_argc = 0;$/;" v file:
|
||||||
c_argv comm.c /^static char *c_argv[9];$/;" v file:
|
c_argv comm.c /^static char *c_argv[9];$/;" v file:
|
||||||
c_flag bmore.c /^int c_flag = 0, d_flag = 0, r_flag = 0;$/;" v
|
c_flag bmore.c /^int c_flag = 0, d_flag = 0, r_flag = 0;$/;" v
|
||||||
calc_addr re.c /^calc_addr(char **pointer, PTR def_addr)$/;" f
|
calc_addr re.c /^calc_addr(pointer, def_addr)$/;" f
|
||||||
calc_size bvi.c /^calc_size(char *arg)$/;" f
|
calc_size bvi.c /^calc_size(arg)$/;" f
|
||||||
cbreak doscur.h 136;" d
|
cbreak doscur.h 136;" d
|
||||||
chk_comm comm.c /^chk_comm(int flag)$/;" f
|
chk_comm comm.c /^chk_comm(flag)$/;" f
|
||||||
chtype doscur.h 58;" d
|
chtype doscur.h 58;" d
|
||||||
clear doscur.h 83;" d
|
clear doscur.h 83;" d
|
||||||
clear_marks edit.c /^clear_marks()$/;" f
|
clear_marks edit.c /^clear_marks()$/;" f
|
||||||
|
@ -246,16 +245,16 @@ clearstr comm.c /^clearstr()$/;" f
|
||||||
cleartoeol bm_dos.c /^cleartoeol()$/;" f
|
cleartoeol bm_dos.c /^cleartoeol()$/;" f
|
||||||
cleartoeol bm_unix.c /^cleartoeol()$/;" f
|
cleartoeol bm_unix.c /^cleartoeol()$/;" f
|
||||||
clrtoeol doscur.h 79;" d
|
clrtoeol doscur.h 79;" d
|
||||||
cmdbuf bmore.c /^static char cmdbuf[2 * MAXCMD];$/;" v file:
|
cmdbuf bmore.c /^static char cmdbuf[MAXCMD];$/;" v file:
|
||||||
cmdstr bvi.c /^char cmdstr[MAXCMD+1] = "";$/;" v
|
cmdstr bvi.c /^char cmdstr[MAXCMD+1] = "";$/;" v
|
||||||
cnt bmore.c /^static int cnt = 0;$/;" v file:
|
cnt bmore.c /^static int cnt = 0;$/;" v file:
|
||||||
contrd edit.c /^char contrd[][4] = {"NUL", " ^A", " ^B", " ^C", " ^D", " ^E", " ^F", "BEL",$/;" v
|
contrd edit.c /^char contrd[][4] = {"NUL", " ^A", " ^B", " ^C", " ^D", " ^E", " ^F", "BEL",$/;" v
|
||||||
contru edit.c /^char contru[][4] = {"NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL",$/;" v
|
contru edit.c /^char contru[][4] = {"NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL",$/;" v
|
||||||
copyright bmore.c /^char *copyright = "GPL (C) 1990-2022 by Gerhard Buergmann";$/;" v
|
copyright bmore.c /^char *copyright = "GPL (C) 1990-2019 by Gerhard Buergmann";$/;" v
|
||||||
copyright bvi.c /^char *copyright = "(C) GPL 1996-2025 by Gerhard Buergmann";$/;" v
|
copyright bvi.c /^char *copyright = "(C) GPL 1996-2019 by Gerhard Buergmann";$/;" v
|
||||||
corr bmore.c /^int corr = 0, do_header = 0, to_print;$/;" v
|
corr bmore.c /^int corr = 0, do_header = 0, to_print;$/;" v
|
||||||
cur_back edit.c /^cur_back()$/;" f
|
cur_back edit.c /^cur_back()$/;" f
|
||||||
cur_forw edit.c /^cur_forw(int check)$/;" f
|
cur_forw edit.c /^cur_forw(check)$/;" f
|
||||||
curfile bvi.c /^int curfile; \/* number of the current file *\/$/;" v
|
curfile bvi.c /^int curfile; \/* number of the current file *\/$/;" v
|
||||||
curpos bvi.c /^PTR curpos;$/;" v
|
curpos bvi.c /^PTR curpos;$/;" v
|
||||||
curr_file bmore.c /^FILE *curr_file = NULL, *help_file;$/;" v
|
curr_file bmore.c /^FILE *curr_file = NULL, *help_file;$/;" v
|
||||||
|
@ -268,44 +267,44 @@ dbug bm_dos.c /^FILE *dbug;$/;" v
|
||||||
delch dosio.c /^delch()$/;" f
|
delch dosio.c /^delch()$/;" f
|
||||||
deleteln doscur.h 110;" d
|
deleteln doscur.h 110;" d
|
||||||
dlines bm_unix.c /^int dum_opt, dlines;$/;" v
|
dlines bm_unix.c /^int dum_opt, dlines;$/;" v
|
||||||
do_append bvi.c /^do_append(off_t count, char *buf)$/;" f
|
do_append bvi.c /^do_append(count, buf)$/;" f
|
||||||
do_back edit.c /^do_back(off_t n, PTR start)$/;" f
|
do_back edit.c /^do_back(n, start)$/;" f
|
||||||
do_delete edit.c /^do_delete(off_t n, PTR start)$/;" f
|
do_delete edit.c /^do_delete(n, start)$/;" f
|
||||||
do_exit comm.c /^do_exit()$/;" f
|
do_exit comm.c /^do_exit()$/;" f
|
||||||
do_ft edit.c /^do_ft(int ch, int flag)$/;" f
|
do_ft edit.c /^do_ft(ch, flag)$/;" f
|
||||||
do_header bmore.c /^int corr = 0, do_header = 0, to_print;$/;" v
|
do_header bmore.c /^int corr = 0, do_header = 0, to_print;$/;" v
|
||||||
do_ins_chg edit.c /^do_ins_chg(PTR start, char *arg, int mode)$/;" f
|
do_ins_chg edit.c /^do_ins_chg(start, arg, mode)$/;" f
|
||||||
do_logic set.c /^do_logic(int mode, char *str)$/;" f
|
do_logic set.c /^do_logic(mode, str)$/;" f
|
||||||
do_mark edit.c /^do_mark(int mark, PTR addr)$/;" f
|
do_mark edit.c /^do_mark(mark, addr)$/;" f
|
||||||
do_next bmore.c /^do_next(int n)$/;" f
|
do_next bmore.c /^do_next(n)$/;" f
|
||||||
do_over bvi.c /^do_over(PTR loc, off_t n, PTR buf)$/;" f
|
do_over bvi.c /^do_over(loc, n, buf)$/;" f
|
||||||
do_put bvi.c /^do_put(PTR loc, off_t n, PTR buf)$/;" f
|
do_put bvi.c /^do_put(loc, n, buf)$/;" f
|
||||||
do_shell dosio.c /^do_shell()$/;" f
|
do_shell dosio.c /^do_shell()$/;" f
|
||||||
do_shell io.c /^do_shell()$/;" f
|
do_shell io.c /^do_shell()$/;" f
|
||||||
do_substitution re.c /^do_substitution(int delim, char *line, PTR startpos, PTR endpos)$/;" f
|
do_substitution re.c /^do_substitution(delim, line, startpos, endpos)$/;" f
|
||||||
do_tilde bvi.c /^do_tilde(off_t count)$/;" f
|
do_tilde bvi.c /^do_tilde(count)$/;" f
|
||||||
do_undo bvi.c /^do_undo()$/;" f
|
do_undo bvi.c /^do_undo()$/;" f
|
||||||
do_z edit.c /^do_z(int mode)$/;" f
|
do_z edit.c /^do_z(mode)$/;" f
|
||||||
docmdline comm.c /^docmdline(char *cmdline)$/;" f
|
docmdline comm.c /^docmdline(cmdline)$/;" f
|
||||||
doecmd comm.c /^doecmd(char *arg, int force)$/;" f
|
doecmd comm.c /^doecmd(arg, force)$/;" f
|
||||||
doset set.c /^doset(char *arg)$/;" f
|
doset set.c /^doset(arg)$/;" f
|
||||||
doshell bm_dos.c /^doshell(cmd)$/;" f
|
doshell bm_dos.c /^doshell(cmd)$/;" f
|
||||||
doshell bm_unix.c /^doshell(char *cmd)$/;" f
|
doshell bm_unix.c /^doshell(cmd)$/;" f
|
||||||
doupdate doscur.h 143;" d
|
doupdate doscur.h 143;" d
|
||||||
dum_opt bm_unix.c /^int dum_opt, dlines;$/;" v
|
dum_opt bm_unix.c /^int dum_opt, dlines;$/;" v
|
||||||
dup_print_flag bmore.c /^int dup_print_flag = 0;$/;" v
|
dup_print_flag bmore.c /^int dup_print_flag = 0;$/;" v
|
||||||
echo doscur.h 128;" d
|
echo doscur.h 128;" d
|
||||||
edit edit.c /^edit(int mode)$/;" f
|
edit edit.c /^edit(mode)$/;" f
|
||||||
edits bvi.c /^int edits = 0;$/;" v
|
edits bvi.c /^int edits = 0;$/;" v
|
||||||
emptyclass bmore.c /^char *emptyclass = "Empty byte class '[]' or '[^]'";$/;" v
|
emptyclass bmore.c /^char *emptyclass = "Empty byte class '[]' or '[^]'";$/;" v
|
||||||
emptyclass re.c /^char *emptyclass = "Bad character class|Empty byte class '[]' or '[^]' cannot match";$/;" v
|
emptyclass re.c /^char *emptyclass = "Bad character class|Empty byte class '[]' or '[^]' cannot match";$/;" v
|
||||||
emsg bmore.c /^emsg(char *s)$/;" f
|
emsg bmore.c /^emsg(s)$/;" f
|
||||||
emsg comm.c /^emsg(char *s)$/;" f
|
emsg comm.c /^emsg(s)$/;" f
|
||||||
end_addr comm.c /^PTR end_addr;$/;" v
|
end_addr comm.c /^PTR end_addr;$/;" v
|
||||||
end_word re.c /^end_word(PTR start)$/;" f
|
end_word re.c /^end_word(start)$/;" f
|
||||||
endwin doscur.h 137;" d
|
endwin doscur.h 137;" d
|
||||||
enlarge dosio.c /^enlarge(off_t add)$/;" f
|
enlarge dosio.c /^enlarge(off_t add)$/;" f
|
||||||
enlarge io.c /^enlarge(off_t add)$/;" f
|
enlarge io.c /^enlarge(add)$/;" f
|
||||||
env bvi.c /^jmp_buf env; \/* context for `longjmp' function *\/$/;" v
|
env bvi.c /^jmp_buf env; \/* context for `longjmp' function *\/$/;" v
|
||||||
erase doscur.h 81;" d
|
erase doscur.h 81;" d
|
||||||
erase_ln bm_unix.c /^char *erase_ln; \/* erase line *\/$/;" v
|
erase_ln bm_unix.c /^char *erase_ln; \/* erase line *\/$/;" v
|
||||||
|
@ -316,7 +315,7 @@ exval bmore.c /^int exval = 0;$/;" v
|
||||||
fbuf set.c /^static char fbuf[MAXCMD+1];$/;" v file:
|
fbuf set.c /^static char fbuf[MAXCMD+1];$/;" v file:
|
||||||
ffp set.c /^static FILE *ffp;$/;" v file:
|
ffp set.c /^static FILE *ffp;$/;" v file:
|
||||||
file_nr bmore.c /^int file_nr = 0; \/* number of current input file *\/$/;" v
|
file_nr bmore.c /^int file_nr = 0; \/* number of current input file *\/$/;" v
|
||||||
fileinfo edit.c /^fileinfo(char *fname)$/;" f
|
fileinfo edit.c /^fileinfo(fname)$/;" f
|
||||||
filemode dosio.c /^int filemode;$/;" v
|
filemode dosio.c /^int filemode;$/;" v
|
||||||
filemode io.c /^int filemode;$/;" v
|
filemode io.c /^int filemode;$/;" v
|
||||||
files bmore.c /^char **files; \/* list of input files *\/$/;" v
|
files bmore.c /^char **files; \/* list of input files *\/$/;" v
|
||||||
|
@ -329,13 +328,13 @@ flushinp doscur.h 120;" d
|
||||||
fname_buf bvi.c /^char *fname_buf = NULL;$/;" v
|
fname_buf bvi.c /^char *fname_buf = NULL;$/;" v
|
||||||
fnum bm_unix.c /^int fnum, no_intty, no_tty, slow_tty;$/;" v
|
fnum bm_unix.c /^int fnum, no_intty, no_tty, slow_tty;$/;" v
|
||||||
from_file set.c /^static int from_file = 0;$/;" v file:
|
from_file set.c /^static int from_file = 0;$/;" v file:
|
||||||
fsearch re.c /^fsearch(PTR start, PTR end, char *smem)$/;" f
|
fsearch re.c /^fsearch(start, end, smem)$/;" f
|
||||||
fsearch_end re.c /^fsearch_end(PTR start, PTR end, char *smem, PTR *s_end)$/;" f
|
fsearch_end re.c /^fsearch_end(start, end, smem, s_end)$/;" f
|
||||||
fullname set.h /^ char *fullname; \/* full parameter name *\/$/;" m struct:param
|
fullname set.h /^ char *fullname; \/* full parameter name *\/$/;" m struct:param
|
||||||
getbegyx doscur.h 105;" d
|
getbegyx doscur.h 105;" d
|
||||||
getcbuff edit.c /^static char getcbuff[BUFFER];$/;" v file:
|
getcbuff edit.c /^static char getcbuff[BUFFER];$/;" v file:
|
||||||
getch dosio.c /^getch()$/;" f
|
getch dosio.c /^getch()$/;" f
|
||||||
getcmdstr set.c /^getcmdstr(char *p, int x)$/;" f
|
getcmdstr set.c /^getcmdstr(p, x)$/;" f
|
||||||
getcnext edit.c /^static char *getcnext = NULL;$/;" v file:
|
getcnext edit.c /^static char *getcnext = NULL;$/;" v file:
|
||||||
getmaxyx doscur.h 106;" d
|
getmaxyx doscur.h 106;" d
|
||||||
getyx doscur.h 104;" d
|
getyx doscur.h 104;" d
|
||||||
|
@ -343,7 +342,7 @@ got_int bm_dos.c /^int got_int;$/;" v
|
||||||
got_int bm_unix.c /^int got_int;$/;" v
|
got_int bm_unix.c /^int got_int;$/;" v
|
||||||
help_file bmore.c /^FILE *curr_file = NULL, *help_file;$/;" v
|
help_file bmore.c /^FILE *curr_file = NULL, *help_file;$/;" v
|
||||||
helppath bmore.c /^char helppath[MAXCMD];$/;" v
|
helppath bmore.c /^char helppath[MAXCMD];$/;" v
|
||||||
hex_comp recomp.c /^hex_comp(char *smem, char *pattern)$/;" f
|
hex_comp recomp.c /^hex_comp(smem, pattern)$/;" f
|
||||||
hexchar recomp.c /^hexchar()$/;" f
|
hexchar recomp.c /^hexchar()$/;" f
|
||||||
highlight bm_dos.c /^highlight()$/;" f
|
highlight bm_dos.c /^highlight()$/;" f
|
||||||
highlight bm_unix.c /^highlight()$/;" f
|
highlight bm_unix.c /^highlight()$/;" f
|
||||||
|
@ -361,7 +360,7 @@ initterm bm_dos.c /^initterm()$/;" f
|
||||||
initterm bm_unix.c /^initterm()$/;" f
|
initterm bm_unix.c /^initterm()$/;" f
|
||||||
insch dosio.c /^insch(int c)$/;" f
|
insch dosio.c /^insch(int c)$/;" f
|
||||||
insertln doscur.h 108;" d
|
insertln doscur.h 108;" d
|
||||||
jmpproc bvi.c /^jmpproc(int sig)$/;" f
|
jmpproc bvi.c /^jmpproc(sig)$/;" f
|
||||||
keypad doscur.h 133;" d
|
keypad doscur.h 133;" d
|
||||||
last_motion bvi.c /^PTR last_motion;$/;" v
|
last_motion bvi.c /^PTR last_motion;$/;" v
|
||||||
last_search bmore.c /^off_t last_search = 0;$/;" v
|
last_search bmore.c /^off_t last_search = 0;$/;" v
|
||||||
|
@ -369,11 +368,11 @@ linbuf edit.c /^char linbuf[16384];$/;" v
|
||||||
line bvi.c /^static char line[MAXCMD+1];$/;" v file:
|
line bvi.c /^static char line[MAXCMD+1];$/;" v file:
|
||||||
lineout edit.c /^lineout()$/;" f
|
lineout edit.c /^lineout()$/;" f
|
||||||
load dosio.c /^load(char *fname)$/;" f
|
load dosio.c /^load(char *fname)$/;" f
|
||||||
load io.c /^load(char *fname)$/;" f
|
load io.c /^load(fname)$/;" f
|
||||||
loc bvi.c /^int loc;$/;" v
|
loc bvi.c /^int loc;$/;" v
|
||||||
magic recomp.c /^int magic = 1;$/;" v
|
magic recomp.c /^int magic = 1;$/;" v
|
||||||
main bmore.c /^main(int argc, char *argv[])$/;" f
|
main bmore.c /^main(argc, argv)$/;" f
|
||||||
main bvi.c /^main(int argc, char *argv[])$/;" f
|
main bvi.c /^main(argc, argv)$/;" f
|
||||||
mark bvi.c /^static int mark;$/;" v file:
|
mark bvi.c /^static int mark;$/;" v file:
|
||||||
markbuf bvi.c /^PTR markbuf[26];$/;" v
|
markbuf bvi.c /^PTR markbuf[26];$/;" v
|
||||||
maxpos bvi.c /^PTR maxpos;$/;" v
|
maxpos bvi.c /^PTR maxpos;$/;" v
|
||||||
|
@ -382,15 +381,15 @@ maxx bvi.c /^int maxx, maxy, x, xx, y;$/;" v
|
||||||
maxy bmore.c /^int maxx, maxy;$/;" v
|
maxy bmore.c /^int maxx, maxy;$/;" v
|
||||||
maxy bvi.c /^int maxx, maxy, x, xx, y;$/;" v
|
maxy bvi.c /^int maxx, maxy, x, xx, y;$/;" v
|
||||||
mem bvi.c /^PTR mem = NULL;$/;" v
|
mem bvi.c /^PTR mem = NULL;$/;" v
|
||||||
memcpy bvi.h 136;" d
|
memcpy bvi.h 126;" d
|
||||||
memmove bm_unix.c /^memmove(char *s1, char *s2, size_t n)$/;" f
|
memmove bm_unix.c /^memmove(s1, s2, n)$/;" f
|
||||||
memmove bvi.h 137;" d
|
memmove bvi.h 127;" d
|
||||||
memmove io.c /^memmove(char *s1, char *s2, size_t n)$/;" f
|
memmove io.c /^memmove(s1, s2, n)$/;" f
|
||||||
memsize bvi.c /^off_t filesize, memsize, undosize;$/;" v
|
memsize bvi.c /^off_t filesize, memsize, undosize;$/;" v
|
||||||
morefiles comm.c /^char *morefiles = "more files@to edit";$/;" v
|
morefiles comm.c /^char *morefiles = "more files@to edit";$/;" v
|
||||||
move doscur.h 91;" d
|
move doscur.h 91;" d
|
||||||
movebyte edit.c /^movebyte()$/;" f
|
movebyte edit.c /^movebyte()$/;" f
|
||||||
msg comm.c /^msg(char *s)$/;" f
|
msg comm.c /^msg(s)$/;" f
|
||||||
mvaddch doscur.h 93;" d
|
mvaddch doscur.h 93;" d
|
||||||
mvaddstr doscur.h 97;" d
|
mvaddstr doscur.h 97;" d
|
||||||
mvgetch doscur.h 112;" d
|
mvgetch doscur.h 112;" d
|
||||||
|
@ -436,39 +435,38 @@ numarr bvi.c /^char numarr[MAXCMD+1]; \/* string for collecting number *\/$/;"
|
||||||
numfiles bmore.c /^int numfiles; \/* number of input files *\/$/;" v
|
numfiles bmore.c /^int numfiles; \/* number of input files *\/$/;" v
|
||||||
numfiles bvi.c /^int numfiles; \/* number of input files *\/$/;" v
|
numfiles bvi.c /^int numfiles; \/* number of input files *\/$/;" v
|
||||||
nvalue set.h /^ off_t nvalue;$/;" m struct:param
|
nvalue set.h /^ off_t nvalue;$/;" m struct:param
|
||||||
off_t bmore.h 110;" d
|
off_t bmore.h 106;" d
|
||||||
off_t bvi.h 132;" d
|
off_t bvi.h 122;" d
|
||||||
oldbuf comm.c /^static char oldbuf[CMDSZ + 3]; \/** for :!! command **\/$/;" v file:
|
oldbuf comm.c /^static char oldbuf[CMDSZ]; \/** for :!! command **\/$/;" v file:
|
||||||
oldpos bmore.c /^off_t bytepos, oldpos;$/;" v
|
oldpos bmore.c /^off_t bytepos, oldpos;$/;" v
|
||||||
open_file bmore.c /^open_file(char *name)$/;" f
|
open_file bmore.c /^open_file(name)$/;" f
|
||||||
ostate bm_unix.c /^struct termios ostate, nstate;$/;" v typeref:struct:termios
|
ostate bm_unix.c /^struct termios ostate, nstate;$/;" v typeref:struct:termios
|
||||||
out_len bmore.c /^int out_len;$/;" v
|
out_len bmore.c /^int out_len;$/;" v
|
||||||
outmsg comm.c /^outmsg(char *s)$/;" f
|
outmsg comm.c /^outmsg(s)$/;" f
|
||||||
pagepos bvi.c /^PTR pagepos;$/;" v
|
pagepos bvi.c /^PTR pagepos;$/;" v
|
||||||
param set.h /^struct param {$/;" s
|
param set.h /^struct param {$/;" s
|
||||||
params set.c /^struct param params[] = {$/;" v typeref:struct:param
|
params set.c /^struct param params[] = {$/;" v typeref:struct:param
|
||||||
patcpy re.c /^patcpy(char *s1, char *s2, char delim)$/;" f
|
patcpy re.c /^patcpy(s1, s2, delim)$/;" f
|
||||||
pattern re.c /^char pattern[MAXCMD + 1];$/;" v
|
pattern re.c /^char pattern[MAXCMD + 1];$/;" v
|
||||||
poi recomp.c /^char *poi;$/;" v
|
poi recomp.c /^char *poi;$/;" v
|
||||||
precount bmore.c /^long precount = -1; \/* number preceding command *\/$/;" v
|
precount bmore.c /^long precount = -1; \/* number preceding command *\/$/;" v
|
||||||
precount bvi.c /^long precount = -1;$/;" v
|
precount bvi.c /^long precount = -1;$/;" v
|
||||||
printline edit.c /^printline(PTR mempos, int scpos)$/;" f
|
printline edit.c /^printline(mempos, scpos)$/;" f
|
||||||
printout bmore.c /^printout(int lns)$/;" f
|
printout bmore.c /^printout(lns)$/;" f
|
||||||
printw doscur.h 103;" d
|
printw doscur.h 103;" d
|
||||||
progname bmore.c /^static char progname[10];$/;" v file:
|
progname bmore.c /^static char progname[10];$/;" v file:
|
||||||
progname bvi.c /^static char progname[8];$/;" v file:
|
progname bvi.c /^static char progname[8];$/;" v file:
|
||||||
prompt bmore.c /^int prompt = 1;$/;" v
|
prompt bmore.c /^int prompt = 1;$/;" v
|
||||||
pushback bmore.c /^pushback(int n, char *where)$/;" f
|
pushback bmore.c /^pushback(n, where)$/;" f
|
||||||
|
putchr bm_unix.c /^putchr(ch)$/;" f
|
||||||
putchr bm_unix.c /^putchr(char ch)$/;" f
|
putchr bm_unix.c /^putchr(char ch)$/;" f
|
||||||
putchr bm_unix.c /^putchr(int ch)$/;" f
|
putline bmore.c /^putline(buf, num)$/;" f
|
||||||
putline bmore.c /^putline(char *buf, int num)$/;" f
|
|
||||||
quit edit.c /^quit()$/;" f
|
quit edit.c /^quit()$/;" f
|
||||||
r_flag bmore.c /^int c_flag = 0, d_flag = 0, r_flag = 0;$/;" v
|
r_flag bmore.c /^int c_flag = 0, d_flag = 0, r_flag = 0;$/;" v
|
||||||
range bvi.c /^range(int ch)$/;" f
|
range bvi.c /^range(ch)$/;" f
|
||||||
raw doscur.h 138;" d
|
raw doscur.h 138;" d
|
||||||
rdline bmore.c /^rdline(int ch, char *sstring)$/;" f
|
rdline bmore.c /^rdline(ch, sstring)$/;" f
|
||||||
read_rc set.c /^read_rc(char *fn)$/;" f
|
read_rc set.c /^read_rc(fn)$/;" f
|
||||||
read_to_end io.c /^read_to_end(int fd, void *buf, size_t count) {$/;" f file:
|
|
||||||
refresh doscur.h 134;" d
|
refresh doscur.h 134;" d
|
||||||
rep_buf bvi.c /^char rep_buf[BUFFER];$/;" v
|
rep_buf bvi.c /^char rep_buf[BUFFER];$/;" v
|
||||||
repaint edit.c /^repaint() \/***** redraw screen *********************\/$/;" f
|
repaint edit.c /^repaint() \/***** redraw screen *********************\/$/;" f
|
||||||
|
@ -478,37 +476,36 @@ reset_tty bm_unix.c /^reset_tty()$/;" f
|
||||||
resetty doscur.h 145;" d
|
resetty doscur.h 145;" d
|
||||||
rev_end bm_unix.c /^char *rev_start, *rev_end; \/* enter and exit standout mode *\/$/;" v
|
rev_end bm_unix.c /^char *rev_start, *rev_end; \/* enter and exit standout mode *\/$/;" v
|
||||||
rev_start bm_unix.c /^char *rev_start, *rev_end; \/* enter and exit standout mode *\/$/;" v
|
rev_start bm_unix.c /^char *rev_start, *rev_end; \/* enter and exit standout mode *\/$/;" v
|
||||||
rsearch re.c /^rsearch(PTR start, PTR end, char *smem)$/;" f
|
rsearch re.c /^rsearch(start, end, smem)$/;" f
|
||||||
save dosio.c /^save(char *fname, PTR start, PTR end, int flags)$/;" f
|
save dosio.c /^save(char *fname, PTR start, PTR end, int flags)$/;" f
|
||||||
save io.c /^save(char *fname, char *start, char *end, int flags)$/;" f
|
save io.c /^save(fname, start, end, flags)$/;" f
|
||||||
save_chk comm.c /^save_chk(char *fname, char *start, char *end, int flags)$/;" f
|
save_chk comm.c /^save_chk(fname, start, end, flags)$/;" f
|
||||||
savetty doscur.h 144;" d
|
savetty doscur.h 144;" d
|
||||||
sbracket bmore.c /^sbracket(int start, char *scan, int count)$/;" f
|
sbracket bmore.c /^sbracket(start, scan, count)$/;" f
|
||||||
sbracket re.c /^sbracket(int start, char *scan, int count)$/;" f file:
|
sbracket re.c /^sbracket(start, scan, count)$/;" f file:
|
||||||
scanw doscur.h 124;" d
|
scanw doscur.h 124;" d
|
||||||
scr dosio.c /^struct WINDOW scr;$/;" v typeref:struct:WINDOW
|
scr dosio.c /^struct WINDOW scr;$/;" v typeref:struct:WINDOW
|
||||||
screen bvi.c /^int screen, status, statsize;$/;" v
|
screen bvi.c /^int screen, status, statsize;$/;" v
|
||||||
screen_home bmore.c /^off_t screen_home, filesize;$/;" v
|
screen_home bmore.c /^off_t screen_home, filesize;$/;" v
|
||||||
scrolldown edit.c /^scrolldown(int lns)$/;" f
|
scrolldown edit.c /^scrolldown(lns)$/;" f
|
||||||
scrollok doscur.h 142;" d
|
scrollok doscur.h 142;" d
|
||||||
scrollup edit.c /^scrollup(int lns)$/;" f
|
scrollup edit.c /^scrollup(lns)$/;" f
|
||||||
search_pat re.c /^char search_pat[BUFFER]; \/* \/ or ? command *\/$/;" v
|
search_pat re.c /^char search_pat[BUFFER]; \/* \/ or ? command *\/$/;" v
|
||||||
searching re.c /^searching(int ch, char *line, PTR startpos, PTR endpos, int flag)$/;" f
|
searching re.c /^searching(ch, line, startpos, endpos, flag)$/;" f
|
||||||
set_tty bm_dos.c /^set_tty ()$/;" f
|
set_tty bm_dos.c /^set_tty ()$/;" f
|
||||||
set_tty bm_unix.c /^set_tty()$/;" f
|
set_tty bm_unix.c /^set_tty()$/;" f
|
||||||
setcur edit.c /^setcur()$/;" f
|
setcur edit.c /^setcur()$/;" f
|
||||||
setpage edit.c /^setpage(PTR addr)$/;" f
|
setpage edit.c /^setpage(addr)$/;" f
|
||||||
shell bvi.c /^char *shell;$/;" v
|
shell bvi.c /^char *shell;$/;" v
|
||||||
shortname set.h /^ char *shortname; \/* permissible abbreviation *\/$/;" m struct:param
|
shortname set.h /^ char *shortname; \/* permissible abbreviation *\/$/;" m struct:param
|
||||||
showparms set.c /^showparms(int all)$/;" f
|
showparms set.c /^showparms(all)$/;" f
|
||||||
sig bm_dos.c /^sig()$/;" f
|
sig bm_dos.c /^sig()$/;" f
|
||||||
sig bm_unix.c /^sig(int sig)$/;" f
|
sig bm_unix.c /^sig(sig)$/;" f
|
||||||
size bvi.c /^off_t size;$/;" v
|
size bvi.c /^off_t size;$/;" v
|
||||||
slow_tty bm_unix.c /^int fnum, no_intty, no_tty, slow_tty;$/;" v
|
slow_tty bm_unix.c /^int fnum, no_intty, no_tty, slow_tty;$/;" v
|
||||||
smode bmore.c /^static int smode;$/;" v file:
|
smode bmore.c /^static int smode;$/;" v file:
|
||||||
smode recomp.c /^int smode;$/;" v
|
smode recomp.c /^int smode;$/;" v
|
||||||
smsg comm.c /^smsg(char *s)$/;" f
|
smsg comm.c /^smsg(s)$/;" f
|
||||||
space bvi.c /^int space = 2;$/;" v
|
|
||||||
spos bvi.c /^PTR spos;$/;" v
|
spos bvi.c /^PTR spos;$/;" v
|
||||||
sstring bmore.c /^char sstring[MAXCMD] = ""; \/* string for search *\/$/;" v
|
sstring bmore.c /^char sstring[MAXCMD] = ""; \/* string for search *\/$/;" v
|
||||||
standend doscur.h 89;" d
|
standend doscur.h 89;" d
|
||||||
|
@ -517,19 +514,18 @@ start_addr comm.c /^PTR start_addr;$/;" v
|
||||||
statpos edit.c /^statpos()$/;" f
|
statpos edit.c /^statpos()$/;" f
|
||||||
statsize bvi.c /^int screen, status, statsize;$/;" v
|
statsize bvi.c /^int screen, status, statsize;$/;" v
|
||||||
status bvi.c /^int screen, status, statsize;$/;" v
|
status bvi.c /^int screen, status, statsize;$/;" v
|
||||||
statusflag bvi.c /^int statusflag = 1;$/;" v
|
|
||||||
stdscr dosio.c /^int stdscr = 0;$/;" v
|
stdscr dosio.c /^int stdscr = 0;$/;" v
|
||||||
strcasecmp bmore.h 113;" d
|
strcasecmp bmore.h 109;" d
|
||||||
strcasecmp bvi.h 135;" d
|
strcasecmp bvi.h 125;" d
|
||||||
strdup io.c /^strdup(char *s)$/;" f
|
strdup io.c /^strdup(s)$/;" f
|
||||||
string bmore.c /^char string[MAXCMD];$/;" v
|
string bmore.c /^char string[MAXCMD];$/;" v
|
||||||
string bvi.c /^char string[MAXCMD+1];$/;" v
|
string bvi.c /^char string[MAXCMD+1];$/;" v
|
||||||
strncasecmp bmore.h 112;" d
|
strncasecmp bmore.h 108;" d
|
||||||
strncasecmp bvi.h 134;" d
|
strncasecmp bvi.h 124;" d
|
||||||
stty bm_unix.c 36;" d file:
|
stty bm_unix.c 34;" d file:
|
||||||
stuffin edit.c /^stuffin(char *s)$/;" f
|
stuffin edit.c /^stuffin(s)$/;" f
|
||||||
svalue set.h /^ char *svalue;$/;" m struct:param
|
svalue set.h /^ char *svalue;$/;" m struct:param
|
||||||
sysemsg comm.c /^sysemsg(char *s)$/;" f
|
sysemsg comm.c /^sysemsg(s)$/;" f
|
||||||
terminal dosio.c /^char *terminal = "ansi";$/;" v
|
terminal dosio.c /^char *terminal = "ansi";$/;" v
|
||||||
terminal io.c /^char *terminal;$/;" v
|
terminal io.c /^char *terminal;$/;" v
|
||||||
tmpbuf edit.c /^char tmpbuf[10];$/;" v
|
tmpbuf edit.c /^char tmpbuf[10];$/;" v
|
||||||
|
@ -547,7 +543,7 @@ vgetc bm_unix.c /^vgetc()$/;" f
|
||||||
vgetc edit.c /^vgetc()$/;" f
|
vgetc edit.c /^vgetc()$/;" f
|
||||||
waddch doscur.h 94;" d
|
waddch doscur.h 94;" d
|
||||||
waddstr doscur.h 98;" d
|
waddstr doscur.h 98;" d
|
||||||
wait_return comm.c /^wait_return(int flag)$/;" f
|
wait_return comm.c /^wait_return(flag)$/;" f
|
||||||
wclear doscur.h 82;" d
|
wclear doscur.h 82;" d
|
||||||
wclrtoeol doscur.h 78;" d
|
wclrtoeol doscur.h 78;" d
|
||||||
wdeleteln doscur.h 109;" d
|
wdeleteln doscur.h 109;" d
|
||||||
|
@ -556,7 +552,7 @@ wgetch doscur.h 113;" d
|
||||||
wgetstr doscur.h 116;" d
|
wgetstr doscur.h 116;" d
|
||||||
winsertln doscur.h 107;" d
|
winsertln doscur.h 107;" d
|
||||||
wmove doscur.h 90;" d
|
wmove doscur.h 90;" d
|
||||||
wordsearch re.c /^wordsearch(PTR start, char mode)$/;" f
|
wordsearch re.c /^wordsearch(start, mode)$/;" f
|
||||||
wprintw doscur.h 102;" d
|
wprintw doscur.h 102;" d
|
||||||
wrefresh doscur.h 135;" d
|
wrefresh doscur.h 135;" d
|
||||||
wrstat bvi.c /^static int wrstat = 1;$/;" v file:
|
wrstat bvi.c /^static int wrstat = 1;$/;" v file:
|
||||||
|
|
209
test.txt
209
test.txt
|
@ -1,209 +0,0 @@
|
||||||
AAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
BBBBBBBBBBBBBBBBBBBBBBB
|
|
||||||
CCCCCCCCCCCCCCCCCCCCCCC
|
|
||||||
DDDDDDDDDDDDDDDDDDDDDDD
|
|
||||||
EEEEEEEEEEEEEEEEEEEEEEE
|
|
||||||
FFFFFFFFFFFFFFFFFFFFFFF
|
|
||||||
GGGGGGGGGGGGGGGGGGGGGGG
|
|
||||||
HHHHHHHHHHHHHHHHHHHHHHH
|
|
||||||
IIIIIIIIIIIIIIIIIIIIIII
|
|
||||||
JJJJJJJJJJJJJJJJJJJJJJJ
|
|
||||||
KKKKKKKKKKKKKKKKKKKKKKK
|
|
||||||
LLLLLLLLLLLLLLLLLLLLLLL
|
|
||||||
MMMMMMMMMMMMMMMMMMMMMMM
|
|
||||||
NNNNNNNNNNNNNNNNNNNNNNN
|
|
||||||
OOOOOOOOOOOOOOOOOOOOOOO
|
|
||||||
PPPPPPPPPPPPPPPPPPPPPPP
|
|
||||||
QQQQQQQQQQQQQQQQQQQQQQQ
|
|
||||||
RRRRRRRRRRRRRRRRRRRRRRR
|
|
||||||
SSSSSSSSSSSSSSSSSSSSSSS
|
|
||||||
TTTTTTTTTTTTTTTTTTTTTTT
|
|
||||||
UUUUUUUUUUUUUUUUUUUUUUU
|
|
||||||
VVVVVVVVVVVVVVVVVVVVVVV
|
|
||||||
WWWWWWWWWWWWWWWWWWWWWWW
|
|
||||||
XXXXXXXXXXXXXXXXXXXXXXX
|
|
||||||
YYYYYYYYYYYYYYYYYYYYYYY
|
|
||||||
ZZZZZZZZZZZZZZZZZZZZZZZ
|
|
||||||
aaaaaaaaaaaaaaaaaaaaaaa
|
|
||||||
bbbbbbbbbbbbbbbbbbbbbbb
|
|
||||||
ccccccccccccccccccccccc
|
|
||||||
ddddddddddddddddddddddd
|
|
||||||
eeeeeeeeeeeeeeeeeeeeeee
|
|
||||||
fffffffffffffffffffffff
|
|
||||||
ggggggggggggggggggggggg
|
|
||||||
hhhhhhhhhhhhhhhhhhhhhhh
|
|
||||||
iiiiiiiiiiiiiiiiiiiiiii
|
|
||||||
jjjjjjjjjjjjjjjjjjjjjjj
|
|
||||||
kkkkkkkkkkkkkkkkkkkkkkk
|
|
||||||
lllllllllllllllllllllll
|
|
||||||
mmmmmmmmmmmmmmmmmmmmmmm
|
|
||||||
nnnnnnnnnnnnnnnnnnnnnnn
|
|
||||||
ooooooooooooooooooooooo
|
|
||||||
ppppppppppppppppppppppp
|
|
||||||
qqqqqqqqqqqqqqqqqqqqqqq
|
|
||||||
rrrrrrrrrrrrrrrrrrrrrrr
|
|
||||||
sssssssssssssssssssssss
|
|
||||||
ttttttttttttttttttttttt
|
|
||||||
uuuuuuuuuuuuuuuuuuuuuuu
|
|
||||||
vvvvvvvvvvvvvvvvvvvvvvv
|
|
||||||
wwwwwwwwwwwwwwwwwwwwwww
|
|
||||||
xxxxxxxxxxxxxxxxxxxxxxx
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
BBBBBBBBBBBBBBBBBBBBBBB
|
|
||||||
CCCCCCCCCCCCCCCCCCCCCCC
|
|
||||||
DDDDDDDDDDDDDDDDDDDDDDD
|
|
||||||
EEEEEEEEEEEEEEEEEEEEEEE
|
|
||||||
FFFFFFFFFFFFFFFFFFFFFFF
|
|
||||||
GGGGGGGGGGGGGGGGGGGGGGG
|
|
||||||
HHHHHHHHHHHHHHHHHHHHHHH
|
|
||||||
IIIIIIIIIIIIIIIIIIIIIII
|
|
||||||
JJJJJJJJJJJJJJJJJJJJJJJ
|
|
||||||
KKKKKKKKKKKKKKKKKKKKKKK
|
|
||||||
LLLLLLLLLLLLLLLLLLLLLLL
|
|
||||||
MMMMMMMMMMMMMMMMMMMMMMM
|
|
||||||
NNNNNNNNNNNNNNNNNNNNNNN
|
|
||||||
OOOOOOOOOOOOOOOOOOOOOOO
|
|
||||||
PPPPPPPPPPPPPPPPPPPPPPP
|
|
||||||
QQQQQQQQQQQQQQQQQQQQQQQ
|
|
||||||
RRRRRRRRRRRRRRRRRRRRRRR
|
|
||||||
SSSSSSSSSSSSSSSSSSSSSSS
|
|
||||||
TTTTTTTTTTTTTTTTTTTTTTT
|
|
||||||
UUUUUUUUUUUUUUUUUUUUUUU
|
|
||||||
VVVVVVVVVVVVVVVVVVVVVVV
|
|
||||||
WWWWWWWWWWWWWWWWWWWWWWW
|
|
||||||
XXXXXXXXXXXXXXXXXXXXXXX
|
|
||||||
YYYYYYYYYYYYYYYYYYYYYYY
|
|
||||||
ZZZZZZZZZZZZZZZZZZZZZZZ
|
|
||||||
aaaaaaaaaaaaaaaaaaaaaaa
|
|
||||||
bbbbbbbbbbbbbbbbbbbbbbb
|
|
||||||
ccccccccccccccccccccccc
|
|
||||||
ddddddddddddddddddddddd
|
|
||||||
eeeeeeeeeeeeeeeeeeeeeee
|
|
||||||
fffffffffffffffffffffff
|
|
||||||
ggggggggggggggggggggggg
|
|
||||||
hhhhhhhhhhhhhhhhhhhhhhh
|
|
||||||
iiiiiiiiiiiiiiiiiiiiiii
|
|
||||||
jjjjjjjjjjjjjjjjjjjjjjj
|
|
||||||
kkkkkkkkkkkkkkkkkkkkkkk
|
|
||||||
lllllllllllllllllllllll
|
|
||||||
mmmmmmmmmmmmmmmmmmmmmmm
|
|
||||||
nnnnnnnnnnnnnnnnnnnnnnn
|
|
||||||
ooooooooooooooooooooooo
|
|
||||||
ppppppppppppppppppppppp
|
|
||||||
qqqqqqqqqqqqqqqqqqqqqqq
|
|
||||||
rrrrrrrrrrrrrrrrrrrrrrr
|
|
||||||
sssssssssssssssssssssss
|
|
||||||
ttttttttttttttttttttttt
|
|
||||||
uuuuuuuuuuuuuuuuuuuuuuu
|
|
||||||
vvvvvvvvvvvvvvvvvvvvvvv
|
|
||||||
wwwwwwwwwwwwwwwwwwwwwww
|
|
||||||
xxxxxxxxxxxxxxxxxxxxxxx
|
|
||||||
yyyyyyyyyyyyyyyyyyyyyyy
|
|
||||||
zzzzzzzzzzzzzzzzzzzzzzz
|
|
||||||
yyyyyyyyyyyyyyyyyyyyyyy
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
BBBBBBBBBBBBBBBBBBBBBBB
|
|
||||||
CCCCCCCCCCCCCCCCCCCCCCC
|
|
||||||
DDDDDDDDDDDDDDDDDDDDDDD
|
|
||||||
EEEEEEEEEEEEEEEEEEEEEEE
|
|
||||||
FFFFFFFFFFFFFFFFFFFFFFF
|
|
||||||
GGGGGGGGGGGGGGGGGGGGGGG
|
|
||||||
HHHHHHHHHHHHHHHHHHHHHHH
|
|
||||||
IIIIIIIIIIIIIIIIIIIIIII
|
|
||||||
JJJJJJJJJJJJJJJJJJJJJJJ
|
|
||||||
KKKKKKKKKKKKKKKKKKKKKKK
|
|
||||||
LLLLLLLLLLLLLLLLLLLLLLL
|
|
||||||
MMMMMMMMMMMMMMMMMMMMMMM
|
|
||||||
NNNNNNNNNNNNNNNNNNNNNNN
|
|
||||||
OOOOOOOOOOOOOOOOOOOOOOO
|
|
||||||
PPPPPPPPPPPPPPPPPPPPPPP
|
|
||||||
QQQQQQQQQQQQQQQQQQQQQQQ
|
|
||||||
RRRRRRRRRRRRRRRRRRRRRRR
|
|
||||||
SSSSSSSSSSSSSSSSSSSSSSS
|
|
||||||
TTTTTTTTTTTTTTTTTTTTTTT
|
|
||||||
UUUUUUUUUUUUUUUUUUUUUUU
|
|
||||||
VVVVVVVVVVVVVVVVVVVVVVV
|
|
||||||
WWWWWWWWWWWWWWWWWWWWWWW
|
|
||||||
XXXXXXXXXXXXXXXXXXXXXXX
|
|
||||||
YYYYYYYYYYYYYYYYYYYYYYY
|
|
||||||
ZZZZZZZZZZZZZZZZZZZZZZZ
|
|
||||||
aaaaaaaaaaaaaaaaaaaaaaa
|
|
||||||
bbbbbbbbbbbbbbbbbbbbbbb
|
|
||||||
ccccccccccccccccccccccc
|
|
||||||
ddddddddddddddddddddddd
|
|
||||||
eeeeeeeeeeeeeeeeeeeeeee
|
|
||||||
fffffffffffffffffffffff
|
|
||||||
ggggggggggggggggggggggg
|
|
||||||
hhhhhhhhhhhhhhhhhhhhhhh
|
|
||||||
iiiiiiiiiiiiiiiiiiiiiii
|
|
||||||
jjjjjjjjjjjjjjjjjjjjjjj
|
|
||||||
kkkkkkkkkkkkkkkkkkkkkkk
|
|
||||||
lllllllllllllllllllllll
|
|
||||||
mmmmmmmmmmmmmmmmmmmmmmm
|
|
||||||
nnnnnnnnnnnnnnnnnnnnnnn
|
|
||||||
ooooooooooooooooooooooo
|
|
||||||
ppppppppppppppppppppppp
|
|
||||||
qqqqqqqqqqqqqqqqqqqqqqq
|
|
||||||
rrrrrrrrrrrrrrrrrrrrrrr
|
|
||||||
sssssssssssssssssssssss
|
|
||||||
ttttttttttttttttttttttt
|
|
||||||
uuuuuuuuuuuuuuuuuuuuuuu
|
|
||||||
vvvvvvvvvvvvvvvvvvvvvvv
|
|
||||||
wwwwwwwwwwwwwwwwwwwwwww
|
|
||||||
xxxxxxxxxxxxxxxxxxxxxxx
|
|
||||||
yyyyyyyyyyyyyyyyyyyyyyy
|
|
||||||
zzzzzzzzzzzzzzzzzzzzzzz
|
|
||||||
zzzzzzzzzzzzzzzzzzzzzzz
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
BBBBBBBBBBBBBBBBBBBBBBB
|
|
||||||
CCCCCCCCCCCCCCCCCCCCCCC
|
|
||||||
DDDDDDDDDDDDDDDDDDDDDDD
|
|
||||||
EEEEEEEEEEEEEEEEEEEEEEE
|
|
||||||
FFFFFFFFFFFFFFFFFFFFFFF
|
|
||||||
GGGGGGGGGGGGGGGGGGGGGGG
|
|
||||||
HHHHHHHHHHHHHHHHHHHHHHH
|
|
||||||
IIIIIIIIIIIIIIIIIIIIIII
|
|
||||||
JJJJJJJJJJJJJJJJJJJJJJJ
|
|
||||||
KKKKKKKKKKKKKKKKKKKKKKK
|
|
||||||
LLLLLLLLLLLLLLLLLLLLLLL
|
|
||||||
MMMMMMMMMMMMMMMMMMMMMMM
|
|
||||||
NNNNNNNNNNNNNNNNNNNNNNN
|
|
||||||
OOOOOOOOOOOOOOOOOOOOOOO
|
|
||||||
PPPPPPPPPPPPPPPPPPPPPPP
|
|
||||||
QQQQQQQQQQQQQQQQQQQQQQQ
|
|
||||||
RRRRRRRRRRRRRRRRRRRRRRR
|
|
||||||
SSSSSSSSSSSSSSSSSSSSSSS
|
|
||||||
TTTTTTTTTTTTTTTTTTTTTTT
|
|
||||||
UUUUUUUUUUUUUUUUUUUUUUU
|
|
||||||
VVVVVVVVVVVVVVVVVVVVVVV
|
|
||||||
WWWWWWWWWWWWWWWWWWWWWWW
|
|
||||||
XXXXXXXXXXXXXXXXXXXXXXX
|
|
||||||
YYYYYYYYYYYYYYYYYYYYYYY
|
|
||||||
ZZZZZZZZZZZZZZZZZZZZZZZ
|
|
||||||
aaaaaaaaaaaaaaaaaaaaaaa
|
|
||||||
bbbbbbbbbbbbbbbbbbbbbbb
|
|
||||||
ccccccccccccccccccccccc
|
|
||||||
ddddddddddddddddddddddd
|
|
||||||
eeeeeeeeeeeeeeeeeeeeeee
|
|
||||||
fffffffffffffffffffffff
|
|
||||||
ggggggggggggggggggggggg
|
|
||||||
hhhhhhhhhhhhhhhhhhhhhhh
|
|
||||||
iiiiiiiiiiiiiiiiiiiiiii
|
|
||||||
jjjjjjjjjjjjjjjjjjjjjjj
|
|
||||||
kkkkkkkkkkkkkkkkkkkkkkk
|
|
||||||
lllllllllllllllllllllll
|
|
||||||
mmmmmmmmmmmmmmmmmmmmmmm
|
|
||||||
nnnnnnnnnnnnnnnnnnnnnnn
|
|
||||||
ooooooooooooooooooooooo
|
|
||||||
ppppppppppppppppppppppp
|
|
||||||
qqqqqqqqqqqqqqqqqqqqqqq
|
|
||||||
rrrrrrrrrrrrrrrrrrrrrrr
|
|
||||||
sssssssssssssssssssssss
|
|
||||||
ttttttttttttttttttttttt
|
|
||||||
uuuuuuuuuuuuuuuuuuuuuuu
|
|
||||||
vvvvvvvvvvvvvvvvvvvvvvv
|
|
||||||
wwwwwwwwwwwwwwwwwwwwwww
|
|
||||||
xxxxxxxxxxxxxxxxxxxxxxx
|
|
||||||
yyyyyyyyyyyyyyyyyyyyyyy
|
|
||||||
zzzzzzzzzzzzzzzzzzzzzzz
|
|
||||||
|
|
15
tmp
Normal file
15
tmp
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
if ((ch > 31) && (ch < 127)) {
|
||||||
|
PRINTF("%c", ch);
|
||||||
|
} else {
|
||||||
|
if (r_flag) {
|
||||||
|
if ((ch & 128) && ((ch > 159) && (ch < 255))) {
|
||||||
|
if (!no_tty) highlight();
|
||||||
|
PRINTF("%c", ch & 127);
|
||||||
|
if (!no_tty) normal();
|
||||||
|
} else {
|
||||||
|
PRINTF(".");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
PRINTF(".");
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue