From owner-svn-src-vendor@freebsd.org Wed Sep 9 07:58:38 2020 Return-Path: Delivered-To: svn-src-vendor@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3C0B83C823C; Wed, 9 Sep 2020 07:58:38 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BmZCL14pbz3dGf; Wed, 9 Sep 2020 07:58:38 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0807A1E5DC; Wed, 9 Sep 2020 07:58:38 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 0897wbhP077511; Wed, 9 Sep 2020 07:58:37 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 0897wZSR077500; Wed, 9 Sep 2020 07:58:35 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <202009090758.0897wZSR077500@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Wed, 9 Sep 2020 07:58:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r365496 - in vendor/nvi/2.2.0: . catalog cl common docs ex files man vi X-SVN-Group: vendor X-SVN-Commit-Author: bapt X-SVN-Commit-Paths: in vendor/nvi/2.2.0: . catalog cl common docs ex files man vi X-SVN-Commit-Revision: 365496 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Sep 2020 07:58:38 -0000 Author: bapt Date: Wed Sep 9 07:58:35 2020 New Revision: 365496 URL: https://svnweb.freebsd.org/changeset/base/365496 Log: Tag import of nvi 2.2.0 Added: vendor/nvi/2.2.0/ - copied from r365494, vendor/nvi/dist/ vendor/nvi/2.2.0/.gitignore - copied unchanged from r365495, vendor/nvi/dist/.gitignore vendor/nvi/2.2.0/CMakeLists.txt - copied unchanged from r365495, vendor/nvi/dist/CMakeLists.txt vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.base - copied unchanged from r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.base vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.owner - copied unchanged from r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.owner vendor/nvi/2.2.0/catalog/tr_TR.UTF-8.base - copied unchanged from r365495, vendor/nvi/dist/catalog/tr_TR.UTF-8.base vendor/nvi/2.2.0/catalog/tr_TR.UTF-8.owner - copied unchanged from r365495, vendor/nvi/dist/catalog/tr_TR.UTF-8.owner vendor/nvi/2.2.0/files/ - copied from r365495, vendor/nvi/dist/files/ vendor/nvi/2.2.0/man/ - copied from r365495, vendor/nvi/dist/man/ Replaced: vendor/nvi/2.2.0/LICENSE - copied unchanged from r365495, vendor/nvi/dist/LICENSE vendor/nvi/2.2.0/README - copied unchanged from r365495, vendor/nvi/dist/README vendor/nvi/2.2.0/catalog/Makefile - copied unchanged from r365495, vendor/nvi/dist/catalog/Makefile vendor/nvi/2.2.0/catalog/README - copied unchanged from r365495, vendor/nvi/dist/catalog/README vendor/nvi/2.2.0/catalog/dump.c - copied unchanged from r365495, vendor/nvi/dist/catalog/dump.c vendor/nvi/2.2.0/cl/README.signal - copied unchanged from r365495, vendor/nvi/dist/cl/README.signal vendor/nvi/2.2.0/cl/cl.h - copied unchanged from r365495, vendor/nvi/dist/cl/cl.h vendor/nvi/2.2.0/cl/cl_funcs.c - copied unchanged from r365495, vendor/nvi/dist/cl/cl_funcs.c vendor/nvi/2.2.0/cl/cl_main.c - copied unchanged from r365495, vendor/nvi/dist/cl/cl_main.c vendor/nvi/2.2.0/cl/cl_read.c - copied unchanged from r365495, vendor/nvi/dist/cl/cl_read.c vendor/nvi/2.2.0/cl/cl_screen.c - copied unchanged from r365495, vendor/nvi/dist/cl/cl_screen.c vendor/nvi/2.2.0/cl/cl_term.c - copied unchanged from r365495, vendor/nvi/dist/cl/cl_term.c vendor/nvi/2.2.0/common/args.h - copied unchanged from r365495, vendor/nvi/dist/common/args.h vendor/nvi/2.2.0/common/common.h - copied unchanged from r365495, vendor/nvi/dist/common/common.h vendor/nvi/2.2.0/common/conv.c - copied unchanged from r365495, vendor/nvi/dist/common/conv.c vendor/nvi/2.2.0/common/conv.h - copied unchanged from r365495, vendor/nvi/dist/common/conv.h vendor/nvi/2.2.0/common/cut.c - copied unchanged from r365495, vendor/nvi/dist/common/cut.c vendor/nvi/2.2.0/common/cut.h - copied unchanged from r365495, vendor/nvi/dist/common/cut.h vendor/nvi/2.2.0/common/delete.c - copied unchanged from r365495, vendor/nvi/dist/common/delete.c vendor/nvi/2.2.0/common/encoding.c - copied unchanged from r365495, vendor/nvi/dist/common/encoding.c vendor/nvi/2.2.0/common/exf.c - copied unchanged from r365495, vendor/nvi/dist/common/exf.c vendor/nvi/2.2.0/common/exf.h - copied unchanged from r365495, vendor/nvi/dist/common/exf.h vendor/nvi/2.2.0/common/gs.h - copied unchanged from r365495, vendor/nvi/dist/common/gs.h vendor/nvi/2.2.0/common/key.c - copied unchanged from r365495, vendor/nvi/dist/common/key.c vendor/nvi/2.2.0/common/key.h - copied unchanged from r365495, vendor/nvi/dist/common/key.h vendor/nvi/2.2.0/common/line.c - copied unchanged from r365495, vendor/nvi/dist/common/line.c vendor/nvi/2.2.0/common/log.c - copied unchanged from r365495, vendor/nvi/dist/common/log.c vendor/nvi/2.2.0/common/log.h - copied unchanged from r365495, vendor/nvi/dist/common/log.h vendor/nvi/2.2.0/common/main.c - copied unchanged from r365495, vendor/nvi/dist/common/main.c vendor/nvi/2.2.0/common/mark.c - copied unchanged from r365495, vendor/nvi/dist/common/mark.c vendor/nvi/2.2.0/common/mark.h - copied unchanged from r365495, vendor/nvi/dist/common/mark.h vendor/nvi/2.2.0/common/mem.h - copied unchanged from r365495, vendor/nvi/dist/common/mem.h vendor/nvi/2.2.0/common/msg.c - copied unchanged from r365495, vendor/nvi/dist/common/msg.c vendor/nvi/2.2.0/common/msg.h - copied unchanged from r365495, vendor/nvi/dist/common/msg.h vendor/nvi/2.2.0/common/multibyte.h - copied unchanged from r365495, vendor/nvi/dist/common/multibyte.h vendor/nvi/2.2.0/common/options.c - copied unchanged from r365495, vendor/nvi/dist/common/options.c vendor/nvi/2.2.0/common/options.h - copied unchanged from r365495, vendor/nvi/dist/common/options.h vendor/nvi/2.2.0/common/options_f.c - copied unchanged from r365495, vendor/nvi/dist/common/options_f.c vendor/nvi/2.2.0/common/put.c - copied unchanged from r365495, vendor/nvi/dist/common/put.c vendor/nvi/2.2.0/common/recover.c - copied unchanged from r365495, vendor/nvi/dist/common/recover.c vendor/nvi/2.2.0/common/screen.c - copied unchanged from r365495, vendor/nvi/dist/common/screen.c vendor/nvi/2.2.0/common/screen.h - copied unchanged from r365495, vendor/nvi/dist/common/screen.h vendor/nvi/2.2.0/common/search.c - copied unchanged from r365495, vendor/nvi/dist/common/search.c vendor/nvi/2.2.0/common/seq.c - copied unchanged from r365495, vendor/nvi/dist/common/seq.c vendor/nvi/2.2.0/common/seq.h - copied unchanged from r365495, vendor/nvi/dist/common/seq.h vendor/nvi/2.2.0/common/util.c - copied unchanged from r365495, vendor/nvi/dist/common/util.c vendor/nvi/2.2.0/common/util.h - copied unchanged from r365495, vendor/nvi/dist/common/util.h vendor/nvi/2.2.0/ex/ex.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex.c vendor/nvi/2.2.0/ex/ex.h - copied unchanged from r365495, vendor/nvi/dist/ex/ex.h vendor/nvi/2.2.0/ex/ex_abbrev.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_abbrev.c vendor/nvi/2.2.0/ex/ex_append.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_append.c vendor/nvi/2.2.0/ex/ex_args.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_args.c vendor/nvi/2.2.0/ex/ex_argv.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_argv.c vendor/nvi/2.2.0/ex/ex_at.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_at.c vendor/nvi/2.2.0/ex/ex_bang.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_bang.c vendor/nvi/2.2.0/ex/ex_cd.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_cd.c vendor/nvi/2.2.0/ex/ex_cmd.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_cmd.c vendor/nvi/2.2.0/ex/ex_cscope.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_cscope.c vendor/nvi/2.2.0/ex/ex_delete.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_delete.c vendor/nvi/2.2.0/ex/ex_display.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_display.c vendor/nvi/2.2.0/ex/ex_edit.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_edit.c vendor/nvi/2.2.0/ex/ex_equal.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_equal.c vendor/nvi/2.2.0/ex/ex_file.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_file.c vendor/nvi/2.2.0/ex/ex_filter.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_filter.c vendor/nvi/2.2.0/ex/ex_global.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_global.c vendor/nvi/2.2.0/ex/ex_init.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_init.c vendor/nvi/2.2.0/ex/ex_join.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_join.c vendor/nvi/2.2.0/ex/ex_map.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_map.c vendor/nvi/2.2.0/ex/ex_mark.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_mark.c vendor/nvi/2.2.0/ex/ex_mkexrc.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_mkexrc.c vendor/nvi/2.2.0/ex/ex_move.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_move.c vendor/nvi/2.2.0/ex/ex_open.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_open.c vendor/nvi/2.2.0/ex/ex_preserve.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_preserve.c vendor/nvi/2.2.0/ex/ex_print.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_print.c vendor/nvi/2.2.0/ex/ex_put.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_put.c vendor/nvi/2.2.0/ex/ex_quit.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_quit.c vendor/nvi/2.2.0/ex/ex_read.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_read.c vendor/nvi/2.2.0/ex/ex_screen.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_screen.c vendor/nvi/2.2.0/ex/ex_script.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_script.c vendor/nvi/2.2.0/ex/ex_set.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_set.c vendor/nvi/2.2.0/ex/ex_shell.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_shell.c vendor/nvi/2.2.0/ex/ex_shift.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_shift.c vendor/nvi/2.2.0/ex/ex_source.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_source.c vendor/nvi/2.2.0/ex/ex_stop.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_stop.c vendor/nvi/2.2.0/ex/ex_subst.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_subst.c vendor/nvi/2.2.0/ex/ex_tag.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_tag.c vendor/nvi/2.2.0/ex/ex_txt.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_txt.c vendor/nvi/2.2.0/ex/ex_undo.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_undo.c vendor/nvi/2.2.0/ex/ex_usage.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_usage.c vendor/nvi/2.2.0/ex/ex_util.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_util.c vendor/nvi/2.2.0/ex/ex_version.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_version.c vendor/nvi/2.2.0/ex/ex_visual.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_visual.c vendor/nvi/2.2.0/ex/ex_write.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_write.c vendor/nvi/2.2.0/ex/ex_yank.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_yank.c vendor/nvi/2.2.0/ex/ex_z.c - copied unchanged from r365495, vendor/nvi/dist/ex/ex_z.c vendor/nvi/2.2.0/ex/script.h - copied unchanged from r365495, vendor/nvi/dist/ex/script.h vendor/nvi/2.2.0/ex/tag.h - copied unchanged from r365495, vendor/nvi/dist/ex/tag.h vendor/nvi/2.2.0/vi/getc.c - copied unchanged from r365495, vendor/nvi/dist/vi/getc.c vendor/nvi/2.2.0/vi/v_at.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_at.c vendor/nvi/2.2.0/vi/v_ch.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_ch.c vendor/nvi/2.2.0/vi/v_cmd.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_cmd.c vendor/nvi/2.2.0/vi/v_delete.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_delete.c vendor/nvi/2.2.0/vi/v_ex.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_ex.c vendor/nvi/2.2.0/vi/v_increment.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_increment.c vendor/nvi/2.2.0/vi/v_init.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_init.c vendor/nvi/2.2.0/vi/v_itxt.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_itxt.c vendor/nvi/2.2.0/vi/v_left.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_left.c vendor/nvi/2.2.0/vi/v_mark.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_mark.c vendor/nvi/2.2.0/vi/v_match.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_match.c vendor/nvi/2.2.0/vi/v_paragraph.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_paragraph.c vendor/nvi/2.2.0/vi/v_put.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_put.c vendor/nvi/2.2.0/vi/v_redraw.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_redraw.c vendor/nvi/2.2.0/vi/v_replace.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_replace.c vendor/nvi/2.2.0/vi/v_right.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_right.c vendor/nvi/2.2.0/vi/v_screen.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_screen.c vendor/nvi/2.2.0/vi/v_scroll.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_scroll.c vendor/nvi/2.2.0/vi/v_search.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_search.c vendor/nvi/2.2.0/vi/v_section.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_section.c vendor/nvi/2.2.0/vi/v_sentence.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_sentence.c vendor/nvi/2.2.0/vi/v_status.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_status.c vendor/nvi/2.2.0/vi/v_txt.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_txt.c vendor/nvi/2.2.0/vi/v_ulcase.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_ulcase.c vendor/nvi/2.2.0/vi/v_undo.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_undo.c vendor/nvi/2.2.0/vi/v_util.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_util.c vendor/nvi/2.2.0/vi/v_word.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_word.c vendor/nvi/2.2.0/vi/v_xchar.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_xchar.c vendor/nvi/2.2.0/vi/v_yank.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_yank.c vendor/nvi/2.2.0/vi/v_z.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_z.c vendor/nvi/2.2.0/vi/v_zexit.c - copied unchanged from r365495, vendor/nvi/dist/vi/v_zexit.c vendor/nvi/2.2.0/vi/vi.c - copied unchanged from r365495, vendor/nvi/dist/vi/vi.c vendor/nvi/2.2.0/vi/vi.h - copied unchanged from r365495, vendor/nvi/dist/vi/vi.h vendor/nvi/2.2.0/vi/vs_line.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_line.c vendor/nvi/2.2.0/vi/vs_msg.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_msg.c vendor/nvi/2.2.0/vi/vs_refresh.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_refresh.c vendor/nvi/2.2.0/vi/vs_relative.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_relative.c vendor/nvi/2.2.0/vi/vs_smap.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_smap.c vendor/nvi/2.2.0/vi/vs_split.c - copied unchanged from r365495, vendor/nvi/dist/vi/vs_split.c Deleted: vendor/nvi/2.2.0/cl/extern.h vendor/nvi/2.2.0/common/extern.h vendor/nvi/2.2.0/common/options_def.h vendor/nvi/2.2.0/docs/ vendor/nvi/2.2.0/ex/ex_def.h vendor/nvi/2.2.0/ex/extern.h vendor/nvi/2.2.0/ex/version.h vendor/nvi/2.2.0/vi/extern.h Copied: vendor/nvi/2.2.0/.gitignore (from r365495, vendor/nvi/dist/.gitignore) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/.gitignore Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/.gitignore) @@ -0,0 +1,9 @@ +*.swp +*~ +*.orig +*.core +extern.h +*_def.h +version.h +tags +build/ Copied: vendor/nvi/2.2.0/CMakeLists.txt (from r365495, vendor/nvi/dist/CMakeLists.txt) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/CMakeLists.txt Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/CMakeLists.txt) @@ -0,0 +1,190 @@ +cmake_minimum_required(VERSION 3.9) + +get_property(is_multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +if(is_multi_config) + set(CMAKE_CONFIGURATION_TYPES Debug Release CACHE STRING + "Semicolon separated list of supported configuration types") + mark_as_advanced(CMAKE_CONFIGURATION_TYPES) +elseif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_C_FLAGS) + message(WARNING "No CMAKE_BUILD_TYPE is selected") +endif() + +project(nvi2 C) + +include(CheckIncludeFiles) +include(CheckFunctionExists) +include(CheckCSourceCompiles) + +mark_as_advanced(CMAKE_INSTALL_PREFIX) + +option(USE_WIDECHAR "Enable wide character support" ON) +option(USE_ICONV "Enable iconv support" ON) + +add_compile_options(-fcolor-diagnostics) +add_compile_options($<$:-Wall>) +add_compile_options($<$:-Wno-parentheses>) +add_compile_options($<$:-Wno-uninitialized>) +add_compile_options($<$:-Wmissing-prototypes>) +add_compile_options($<$:-Wsystem-headers>) +add_compile_options($<$:-Wuninitialized>) +add_compile_options($<$:-Wno-dangling-else>) +add_compile_options(-Wstack-protector -fstack-protector) +add_compile_options(-Wstrict-aliasing -fstrict-aliasing) + +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +set(MAIN_PROTOS + cl/extern.h common/extern.h ex/extern.h vi/extern.h + common/options_def.h ex/ex_def.h ex/version.h) + +set(CL_SRCS + cl/cl_funcs.c cl/cl_main.c cl/cl_read.c cl/cl_screen.c cl/cl_term.c) + +set(COMMON_SRCS + common/conv.c common/cut.c common/delete.c common/encoding.c common/exf.c + common/key.c common/line.c common/log.c common/main.c common/mark.c + common/msg.c common/options.c common/options_f.c common/put.c + common/recover.c common/screen.c common/search.c common/seq.c + common/util.c) + +set(EX_SRCS + ex/ex.c ex/ex_abbrev.c ex/ex_append.c ex/ex_args.c ex/ex_argv.c ex/ex_at.c + ex/ex_bang.c ex/ex_cd.c ex/ex_cmd.c ex/ex_cscope.c ex/ex_delete.c + ex/ex_display.c ex/ex_edit.c ex/ex_equal.c ex/ex_file.c ex/ex_filter.c + ex/ex_global.c ex/ex_init.c ex/ex_join.c ex/ex_map.c ex/ex_mark.c + ex/ex_mkexrc.c ex/ex_move.c ex/ex_open.c ex/ex_preserve.c ex/ex_print.c + ex/ex_put.c ex/ex_quit.c ex/ex_read.c ex/ex_screen.c ex/ex_script.c + ex/ex_set.c ex/ex_shell.c ex/ex_shift.c ex/ex_source.c ex/ex_stop.c + ex/ex_subst.c ex/ex_tag.c ex/ex_txt.c ex/ex_undo.c ex/ex_usage.c + ex/ex_util.c ex/ex_version.c ex/ex_visual.c ex/ex_write.c ex/ex_yank.c + ex/ex_z.c) + +set(VI_SRCS + vi/getc.c vi/v_at.c vi/v_ch.c vi/v_cmd.c vi/v_delete.c vi/v_ex.c + vi/v_increment.c vi/v_init.c vi/v_itxt.c vi/v_left.c vi/v_mark.c + vi/v_match.c vi/v_paragraph.c vi/v_put.c vi/v_redraw.c vi/v_replace.c + vi/v_right.c vi/v_screen.c vi/v_scroll.c vi/v_search.c vi/v_section.c + vi/v_sentence.c vi/v_status.c vi/v_txt.c vi/v_ulcase.c vi/v_undo.c + vi/v_util.c vi/v_word.c vi/v_xchar.c vi/v_yank.c vi/v_z.c vi/v_zexit.c + vi/vi.c vi/vs_line.c vi/vs_msg.c vi/vs_refresh.c vi/vs_relative.c + vi/vs_smap.c vi/vs_split.c) + +set(REGEX_SRCS + regex/regcomp.c regex/regerror.c regex/regexec.c regex/regfree.c) + +# commands to generate the public headers +set(extract_protos sed -n 's/^ \\* PUBLIC: \\\(.*\\\)/\\1/p') +set(extract_version sed -n + 's/^.*version \\\([^\)]*\)\\\).*/\#define VI_VERSION \\\"\\1\\\"/p') + +add_custom_command(OUTPUT cl/extern.h + COMMAND ${extract_protos} ${CL_SRCS} > cl/extern.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${CL_SRCS}) +add_custom_command(OUTPUT common/extern.h + COMMAND ${extract_protos} ${COMMON_SRCS} > common/extern.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${COMMON_SRCS}) +add_custom_command(OUTPUT ex/extern.h + COMMAND ${extract_protos} ${EX_SRCS} > ex/extern.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${EX_SRCS}) +add_custom_command(OUTPUT vi/extern.h + COMMAND ${extract_protos} ${VI_SRCS} > vi/extern.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ${VI_SRCS}) +add_custom_command(OUTPUT common/options_def.h + COMMAND awk -f common/options.awk + common/options.c > common/options_def.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS common/options.c) +add_custom_command(OUTPUT ex/ex_def.h + COMMAND awk -f ex/ex.awk ex/ex_cmd.c > ex/ex_def.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS ex/ex_cmd.c) +add_custom_command(OUTPUT ex/version.h + COMMAND ${extract_version} README > ex/version.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS README) + +add_executable(nvi) +target_sources(nvi PRIVATE ${MAIN_PROTOS} ${CL_SRCS} ${COMMON_SRCS} + ${EX_SRCS} ${VI_SRCS}) +target_compile_definitions(nvi PRIVATE $<$:DEBUG> + $<$:COMLOG>) + +check_function_exists(openpty UTIL_IN_LIBC) +if(NOT UTIL_IN_LIBC) + find_library(UTIL_LIBRARY util) + target_link_libraries(nvi PRIVATE ${UTIL_LIBRARY}) +endif() + +check_function_exists(__b64_ntop RESOLV_IN_LIBC) +if(NOT RESOLV_IN_LIBC) + find_library(RESOLV_LIBRARY resolv) + target_link_libraries(nvi PRIVATE ${RESOLV_LIBRARY}) +endif() + +if(USE_WIDECHAR) + find_library(CURSES_LIBRARY NAMES ncursesw cursesw curses HINTS /usr/lib) + + # link to the wchar_t awared BSD libregex.a + add_library(regex STATIC) + target_sources(regex PRIVATE ${REGEX_SRCS}) + target_include_directories(regex PUBLIC regex) + target_compile_definitions(regex PUBLIC __REGEX_PRIVATE) + target_link_libraries(nvi PRIVATE regex) +else() + find_library(CURSES_LIBRARY NAMES ncurses curses HINTS /usr/lib) + target_compile_options(nvi PRIVATE -Wno-pointer-sign) +endif() + +target_link_libraries(nvi PRIVATE ${CURSES_LIBRARY}) + +if(USE_ICONV) + check_function_exists(__iconv ICONV_IN_LIBC) + if(NOT ICONV_IN_LIBC) + find_path(ICONV_INCLUDE_DIR iconv.h) + find_library(ICONV_LIBRARY iconv) + endif() + + # detect the prototype of iconv(3) + set(CMAKE_C_FLAGS_BACKUP "${CMAKE_C_FLAGS}") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror") + set(CMAKE_REQUIRED_INCLUDES "${ICONV_INCLUDE_DIR}") + set(CMAKE_REQUIRED_LIBRARIES "${ICONV_LIBRARY}") + check_c_source_compiles(" + #include + int main() { + iconv_t conv = 0; + char* in = 0; + size_t ilen = 0; + char* out = 0; + size_t olen = 0; + iconv(conv, &in, &ilen, &out, &olen); + return 0; + } + " ICONV_TRADITIONAL) + set(CMAKE_REQUIRED_INCLUDES) + set(CMAKE_REQUIRED_LIBRARIES) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS_BACKUP}") + + target_include_directories(nvi PRIVATE ${ICONV_INCLUDE_DIR}) + target_link_libraries(nvi PRIVATE ${ICONV_LIBRARY}) +endif() + +check_include_files(libutil.h HAVE_LIBUTIL_H) +check_include_files(ncurses.h HAVE_NCURSES_H) +check_include_files(term.h HAVE_TERM_H) + +configure_file(files/config.h.in config.h) + +set(vi_cv_path_preserve /var/tmp/vi.recover/) +if(APPLE) + set(vi_cv_path_msgcat /usr/local/share/vi/catalog/) +else() + set(vi_cv_path_msgcat /usr/share/vi/catalog/) +endif() + +configure_file(files/pathnames.h.in pathnames.h) +configure_file(files/recover.in recover @ONLY) Copied: vendor/nvi/2.2.0/LICENSE (from r365495, vendor/nvi/dist/LICENSE) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/LICENSE Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/LICENSE) @@ -0,0 +1,37 @@ +The following are the copyrights and redistribution conditions that apply +to this copy of the Vi software. + +/* + * Copyright (c) 1991, 1992, 1993, 1994 + * The Regents of the University of California. All rights reserved. + * Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 + * Keith Bostic. All rights reserved. + * Copyright (c) 1999, 2000 + * Sven Verdoolaege. All rights reserved. + * Copyright (c) 2011 + * Zhihao Yuan. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ Copied: vendor/nvi/2.2.0/README (from r365495, vendor/nvi/dist/README) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/README Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/README) @@ -0,0 +1,64 @@ +This is version 2.2.0 (2020-08-01) of nex/nvi, a reimplementation of the ex/vi +text editors originally distributed as part of the Fourth Berkeley +Software Distribution (4BSD), by the University of California, Berkeley. + +The directory layout is as follows: + + LICENSE ....... Copyright, use and redistribution information. + README ........ This file. + catalog ....... Message catalogs; see catalog/README. + cl ............ Vi interface to the curses(3) library. + common ........ Code shared by ex and vi. + ex ............ Ex source code. + files ......... Template files. + man ........... Ex/vi documentation. + regex ......... Modified regex library with wide character support. + vi ............ Vi source code. + +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + +o Nvi was written by Keith Bostic, and the last version is 1.79. After that, + + Sven Verdoolaege added the iconv support and the DB3 locking. + + Jun-ichiro itojun Hagino developed the file encoding detection + techniques in his nvi-m17n. + +The following acknowledgments were written by Keith Bostic: + +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= +o This software is several years old and is the product of many folks' work. + + This software was originally derived from software contributed to + the University of California, Berkeley by Steve Kirkendall, the + author of the vi clone elvis. Without his work, this work would + have been far more difficult. + + IEEE POSIX 1003.2 style regular expression support is courtesy of + Henry Spencer, for which I am *very* grateful. + + Elan Amir did the original 4BSD curses work that made it possible + to support a full-screen editor using curses. + + George Neville-Neil added the Tcl interpreter, and the initial + interpreter design was his. + + Sven Verdoolaege added the Perl interpreter. + + Rob Mayoff provided the original Cscope support. + +o Many, many people suggested enhancements, and provided bug reports and + testing, far too many to individually thank. + +o From the original vi acknowledgements, by William Joy and Mark Horton: + + Bruce Englar encouraged the early development of this display + editor. Peter Kessler helped bring sanity to version 2's + command layout. Bill Joy wrote versions 1 and 2.0 through 2.7, + and created the framework that users see in the present editor. + Mark Horton added macros and other features and made the editor + work on a large number of terminals and Unix systems. + +o And... + The financial support of UUNET Communications Services is gratefully + acknowledged. Copied: vendor/nvi/2.2.0/catalog/Makefile (from r365495, vendor/nvi/dist/catalog/Makefile) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/Makefile Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/Makefile) @@ -0,0 +1,77 @@ +CAT= dutch english french german polish ru_RU.KOI8-R spanish \ + swedish tr_TR.ISO8859-9 tr_TR.UTF-8 uk_UA.KOI8-U zh_CN.GB2312 +FILES= ../cl/*.c ../common/*.c ../ex/*.c ../vi/*.c + +all: dump ${CAT} + +${CAT}: english.base + @echo "... $@"; \ + rm -f $@; \ + sort -u $@.base | \ + awk '{ \ + if ($$1 == 1) { \ + print "\nMESSAGE NUMBER 1 IS NOT LEGAL"; \ + exit 1; \ + } \ + if (++nline > $$1) { \ + print "DUPLICATE MESSAGE NUMBER " $$1; \ + exit 1; \ + } \ + print $0; \ + }' | \ + sed -e '1s/^/$$set 1~$$quote "~/; 1y/~/\n/' | \ + gencat $@ /dev/stdin; \ + chmod 444 $@; \ + if grep DUPLICATE $@ > /dev/null; then \ + grep DUPLICATE $@; \ + fi; \ + if grep 'NOT LEGAL' $@ > /dev/null; then \ + grep 'NOT LEGAL' $@; \ + fi + +CHK= dutch.check english.check french.check german.check \ + polish.check ru_RU.KOI8-R.check spanish.check swedish.check \ + tr_TR.ISO8859-9.check tr_TR.UTF-8.check uk_UA.KOI8-U.check \ + zh_CN.GB2312.check +check: ${CHK} +${CHK}: ${CAT} + @echo "... $@"; \ + f=`basename $@ .check`; \ + (echo "Unused message id's (this is okay):"; \ + awk '{ \ + while (++nline < $$1) \ + printf "%03d\n", nline; \ + }' < $$f.base; \ + echo =========================; \ + echo "MISSING ERROR MESSAGES (Please add!):"; \ + awk '{print $$1}' < $$f.base | sort -u > __ck1; \ + awk '{print $$1}' < english.base | sort -u > __ck2; \ + comm -13 __ck1 __ck2; \ + echo =========================; \ + echo "Extra error messages (just delete them):"; \ + comm -23 __ck1 __ck2; \ + echo =========================; \ + echo "MESSAGES WITH THE SAME MESSAGE ID's (FIX!):"; \ + for j in \ + `sed '/^$$/d' < $$f.base | sort -u | \ + awk '{print $$1}' | uniq -d`; do \ + egrep $$j $$f.base; \ + done; \ + echo =========================; \ + echo "Duplicate messages, both id and message (this is okay):"; \ + sed '/^$$/d' < $$f.base | sort | uniq -c | \ + awk '$$1 != 1 { print $$0 }' | sort -n; \ + echo =========================) > $@ + +english.base: dump ${FILES} #Makefile + ./dump ${FILES} |\ + sed -e '/|/!d' \ + -e 's/|/ "/' \ + -e 's/^"//' |\ + sort -nu > $@ + +dump: dump.c + ${CC} -O -o dump dump.c + +clean: + rm -f dump dump.o ${CAT} english.base *.check __ck1 __ck2 Copied: vendor/nvi/2.2.0/catalog/README (from r365495, vendor/nvi/dist/catalog/README) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/README Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/README) @@ -0,0 +1,125 @@ +Generally, all non-system error and informational messages in nvi are +catalog messages, i.e. they can be tailored to a specific langauge. +Command strings, usage strings, system errors and other 'known text' +are not. + +Message catalogs in nvi are fairly simple. Every catalog message +consists of two parts -- an initial number followed by a pipe (`|') +character, followed by the English text for the message. For example: + + msgq(sp, M_ERR, "001|This is an error message"); + +would be a typical message. + +When the msgq() routine is called, if the user has specified a message +catalog and the format string (the third argument) has a leading number, +then it is converted to a record number, and that record is retrieved +from the message catalog and used as a replacement format string. If +the record can't be retrieved for any reason, the English text is displayed +instead. + +Each message format string MUST map into the English format string, i.e. +it can't display more or different arguments than the English one. + +For example: + + msgq(sp, M_ERR, "002|Error: %d %x", arg1, arg2); + +is a format string that displays two arguments. + +Arguments to the msgq function are required to contain ONLY printable +characters. No further translation is done by the msgq routine before +displaying the message on the screen. For example, in the msgq call: + + msgq(sp, M_ERR, "003|File: %s", file_name); + +"file_name" must contain only printable characters. The routine +msg_print() returns a printable version of a string; the third argument +indicates whether the string needs to be freed. For example: + + char *p; + int nf; + + p = msg_print(sp, file_name, &nf); + msgq(sp, M_ERR, "003|File: %s", p); + if (nf) + FREE_SPACE(sp, p, 0); + +makes sure that "file_name" is printable before calling the msgq +routine. + +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + +The message catalogs themselves are maintained in two files. The first +is the "base file" which contains two fields, a record number and the +message itself. All base files are named using the convention +".base", e.g. the English one is "english.base". For +example: + + 002 "Line length overflow" + 003 "unable to delete line %lu" + 004 "unable to append to line %lu" + 005 "unable to insert at line %lu" + 006 "unable to store line %lu" + 007 "unable to get last line" + +are the first few lines of the current english.base file. + +Before this file being converted to the second file, the POSIX formatted +message catalog file, by gencat(1), two lines: + + $set 1 + $quote " + +will be inserted before the base text to setup the set_id and the quote +character. So the double-quote needs to be escaped by a backslash to be +included in a message; same as the backslash itself. + +These files are named for their language, e.g. "english". However, a +locale(1) name is also recommended. + +To create a new catalog for nvi: + +Copy the file english.base to a file that you can modify , e.g. "cp +english.base german.base". For each of the messages in the file, +replace the message with the string that you want to use. If you have +doubts about the meaning of a message, just email me. + +A latest english.base can be created from source by running the command +"make english" in the catalog/ directory. + +Once you've translated all of the strings, then add your catalog to the +"CAT=" line of the Makefile, and run the command "make catalog". This +will create the second (and corresponding) file for each file named +.base. + +Don't worry about missing line numbers, i.e. base files that look like: + + 005 Message number 5. + 007 Message number 7. + +This simply means that a message was deleted during the course of nvi's +development. It will be taken care of automatically when you create +the second form of the file. + +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= +If you add new messages to the nvi sources, you can check your work by +doing "make english; make check". The "make check" target lists unused +message numbers, duplicate message numbers, and duplicate messages. +Unused message numbers are only useful if you are condensing messages. +Duplicate message numbers are a serious problem and have to be fixed. +Duplicate messages are only interesting if a message appears often enough +that it's worth creating a routine so that the string is only need in +a single place. + +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= +To select a catalog when running nvi, set the "msgcat" option. If the +value of this option ends with a '/', it is treated as the name of a +directory that contains a message catalog "$LC_MESSAGES", which is set +through the LC_MESSAGES environment variable but returned by setlocale(3). +Check the output of locale(1) to validate such a value. If the option +doesn't end in a '/', the option is treated as the full path name of the +message catalog to use. + +If any messages are missing from the catalog, the backup text (English) +is used instead. Copied: vendor/nvi/2.2.0/catalog/dump.c (from r365495, vendor/nvi/dist/catalog/dump.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/dump.c Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/dump.c) @@ -0,0 +1,97 @@ +/*- + * Copyright (c) 1992, 1993, 1994 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include + +static void +parse(FILE *fp) +{ + int ch, s1, s2, s3; + +#define TESTD(s) { \ + if ((s = getc(fp)) == EOF) \ + return; \ + if (!isdigit(s)) \ + continue; \ +} +#define TESTP { \ + if ((ch = getc(fp)) == EOF) \ + return; \ + if (ch != '|') \ + continue; \ +} +#define MOVEC(t) { \ + do { \ + if ((ch = getc(fp)) == EOF) \ + return; \ + } while (ch != (t)); \ +} + for (;;) { + MOVEC('"'); + TESTD(s1); + TESTD(s2); + TESTD(s3); + TESTP; + putchar('"'); + putchar(s1); + putchar(s2); + putchar(s3); + putchar('|'); + for (;;) { /* dump to end quote. */ + if ((ch = getc(fp)) == EOF) + return; + putchar(ch); + if (ch == '"') + break; + if (ch == '\\') { + if ((ch = getc(fp)) == EOF) + return; + putchar(ch); + } + } + putchar('\n'); + } +} + +int +main(int argc, char *argv[]) +{ + FILE *fp; + + for (; *argv != NULL; ++argv) { + if ((fp = fopen(*argv, "r")) == NULL) { + perror(*argv); + return (1); + } + parse(fp); + (void)fclose(fp); + } + return (0); +} Copied: vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.base (from r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.base) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.base Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.base) @@ -0,0 +1,304 @@ +002 "Satır uzunluğu taşımı" +003 "%lu numaralı satır silinemiyor" +004 "%lu numaralı satıra iliştirilemiyor" +005 "%lu numaralı satırda ekleme yapılamıyor" +006 "%lu numaralı satır kaydedilemiyor" +007 "Son satır alınamıyor" +008 "Hata: %lu numaralı satır okunamıyor" +009 "Günlük dosyası" +010 "Günlükleme gerçekleştirilmiyor, geri alma olanaklı değil" +011 "Geri alınacak bir değişiklik yok" +012 "Günlükleme gerçekleştirilmiyor, geri alma olanaklı değil" +013 "Günlükleme gerçekleştirilmiyor, ileri sarma olanaklı değil" +014 "Yinelenecek bir değişiklik yok" +015 "%s/%d: Günlük kayıt hatası" +016 "Vi'nin standart girdisi ve çıktısı bir uçbirim olmalı" +017 "İm %s: Ayarlanmamış" +018 "İm %s: Satır silinmiş" +019 "İm %s: İmleç konumu artık yok" +020 "Hata: " +021 "yeni dosya +022 "adı değişti" +023 "değiştirildi" +024 "değiştirilmedi" +025 "KİLİDİ AÇILDI" +026 "saltokunur" +027 "satır %lu/%lu [%ld%%]" +028 "boş dosya" +029 "%lu. satır" +030 "%s dosyası bir ileti kataloğu değil" +031 "Öntanımlı %s seçeneği ayarlanamadı" +032 "Kullanım: %s" +033 "set: %s seçeneği yok: 'set all' tüm seçenek değerlerini verir" +034 "set: [no]%s seçeneği bir değer almaz" +035 "set: %s seçeneği bir Boole değeri değil" +036 "set: %s seçeneği: %s" +037 "set: %s seçeneği: %s: Değer taşımı" +038 "set: %s seçeneği: %s izin verilmeyen bir sayı" +039 "set: %s seçeneği bir Boole değeri değil" +040 "Ekran sütun sayısı çok küçük, şundan daha az: %d" +041 "Ekran sütun sayısı çok büyük, şundan daha çok: %d" +042 "Ekran satır sayısı çok küçük, şundan daha az: %d" +043 "Ekran satır sayısı çok büyük, şundan daha çok: %d" +044 "Lisp seçeneği eklenmemiş" +045 "İletiler kapatılmamış: %s" +046 "İletiler açılmamış: %s" +047 "%s seçeneği iki karakterli öbekler biçiminde olmalı" +053 "Başlangıç arabelleği boş" +054 "%s arabelleği boş" +056 "Oturum başarısız olursa değişiklikler kurtarılamaz" +057 "Dosya, kurtarma için kopyalanıyor..." +058 "Koruma başarısız oldu: %s" +059 "Oturum başarısız olursa değişiklikler kurtarılamaz" +060 "Dosya yedeklemesi başarısız oldu: %s" +061 "Dosya, kurtarma için kopyalanıyor..." +062 "%u kullanıcısı üzerine bilgi bulunamadı" +063 "Kurtarma dosyası kilitlenemiyor" +065 "Kurtarma dosyası" +066 "%s: Hatalı oluşturulmuş kurtarma dosyası" +067 "%s: Hatalı oluşturulmuş kurtarma dosyası" +068 "Kurtarılacak %s adında sizce okunabilir bir dosya yok" +069 "Bu dosyanın kurtarabileceğiniz eski sürümleri var" +070 "Kurtarabileceğiniz başka dosyalar var" +071 "E-posta gönderilmedi: %s" +072 "Dosya boş, aranacak bir şey yok" +073 "Dizgi bulunamadan dosyanın sonuna erişildi" +074 "Arama dizgisi yok" +075 "Dizgi bulunamadı" +076 "Dizgi bulunamadan dosyanın başına erişildi" +077 "Arama tamamlandı" +078 "Aranıyor..." +079 "Yazdırılamaz karakter bulunmadı" +080 "Bilinmeyen komut adı" +082 "%s: Komut ex kipinde kullanılamaz" +083 "Sayım sıfır olmayabilir" +084 "%s: Hatalı satır belirtimi" +085 "İç sözdizim tablo hatası (%s: %s)" +086 "Kullanım: %s" +087 "%s: Geçici arabellek salıverilmedi" +088 "Bayrak göreli konumu birinci satırdan önceye" +089 "Bayrak göreli konumu dosya sonunu geçiyor" +090 "Erimli @, dosya/ekran değiştiğinde çalışır" +091 "Global/v komutu dosya/ekran değiştiğinde çalışır" +092 "Ex komutu başarısız: Sıradaki komutlar çıkarıldı" +093 "Ex komutu başarısız: Eşlemlenen düğmeler çıkarıldı" +094 "İkinci adres ilkinden daha küçük" +095 "Bir im adı sağlanmadı" +096 "\\ sonrasında / veya ? gelmiyor" +097 "Bir satır numarasına yapılan başvuru sayısı sıfırdan az" +098 "Bilinmeyen komut: %s" +099 "Adres değeri taşımı" +100 "Adres değeri alttaşımı" +101 "İzin verilmeyen adres birleşimi" +102 "İzin verilmeyen adres: Dosyada yalnızca %lu satır var" +103 "İzin verilmeyen adres: Dosya boş" +104 "%s komutu bir 0 adresine izin vermiyor" +105 "Görüntülenecek kısaltma yok" +106 "Kısaltmalar bir \"sözcük\" karakteri ile bitmelidir" +107 "Kısaltmalar sekme veya boşluk içeremez" +108 "Kısaltmalar sonu dışında sözcük/sözcük olmayan karakterleri karıştıramaz" +109 "\"%s\" bir kısaltma değil" +110 "Vi komutu başarısız: Eşlemlenen düğmeler çıkarıldı" +111 "Düzenlenecek başka dosya yok" +112 "Öncesinde düzenlenecek başka dosya yok" +113 "Öncesinde geri sarılacak dosyalar yok" +114 "Görüntülenecek dosya yok" +115 "Öncesinde \"!\" ögesinin yerine geçecek bir komut yok" +116 "%% yerine geçecek bir dosya adı yok" +117 "# yerine geçecek bir dosya adı yok" +118 "Hata: execl: %s" +119 "Girdi/Çıktı hatası: %s" +120 "Dosya son tam yazımdan bu yana değiştirilmiş; yazın veya yok saymak için ! kullanın" +121 "Ev dizini konumu bulunamıyor" +122 "Yeni şimdiki dizin: %s" +123 "Görüntülenecek kesilmiş arabellek yok" +124 "%s komutu bir global veya v komutunun parçası olarak kullanılamaz" +128 "%s: kaynak alınmıyor: İyesi siz veya kök değil" +129 "%s: kaynak alınmıyor: İyesi siz değilsiniz" +130 "%s: kaynak alınmıyor: İyesi dışında başka bir kullanıcı tarafından yazılabilir" +131 "Uç uca eklenecek bir satır yok" +132 "Girdi eşlem girdisi yok" +133 "Komut eşlem girdisi yok" +134 "%s yeniden eşlemlenemeyebilir" +135 "\"%s\" şu anda eşlemlenmemiş" +136 "İm adları tek bir karakter olmalıdır" +137 "%s mevcut, yazılmamış; yok saymak için ! kullanın" +138 "Yeni exrc dosyası: %s" +139 "Hedef satırı taşıma erimi içinde" +140 "'open' komutu 'open' seçeneğinin ayarlı olmasını gerektirir" +141 "'open' komutu henüz eklenmemiş" +142 "Bu dosyanın korunması olanaklı değil" +143 "Dosya korundu" +144 "%s: Çok fazla dosya adına genişletilmiş" +145 "Yalnızca sıradan dosyalar ve adlandırılmış veri yolları okunabilir" +146 "%s: Okuma kilidi kullanılabilir değildi" +147 "Okunuyor..." +148 "%s: %lu satır, %lu karakter" +149 "Görüntülenecek arkaplan ekranı yok" +150 "'script' komutu yalnızca vi kipinde kullanılabilir" +151 "Çalıştırılacak komut yok" +152 "'shiftwidth' seçeneği 0 olarak ayarlanmış" +153 "Sayım taşımı" +154 "Sayım alttaşımı" +155 "Düzenli ifade belirtilmiş; r bayrağı anlamsız" +156 "#, l ve p bayrakları vi kipinde c bayrağı ile birlikte kullanılamaz" +157 "Eşleşme bulunamadı" +158 "Önceden bir etiket girilmemiş" +159 "Etiket yığınında %s sayısından az girdi; :display t[ags] kullanın" +160 "Etiket yığınında dönülecek bir %s dosyası yok; :display t[ags] kullanın" +161 "Sürdürmek için Enter'a basın:" +162 "%s: Etiket bulunamadı" +163 "%s: %s içinde hasar görmüş etiket" +164 "%s: Etiketin satır numarası dosya sonunu geçmiş" +165 "Etiket yığını boş" +166 "%s: Arama dizgisi bulunamadı" +167 "%d dosya daha düzenlenecek" +168 "%s arabelleği boş" +169 "Değişikliği onayla? [n]" +170 "Yarıda kesildi" +171 "Öncesinde çalıştırılacak arabellek yok" +172 "Öncesinde düzenli ifade yok" +173 "%s komutu bir dosyanın halihazırda okunmuş olmasını gerektirir" +174 "Kullanım: %s" +175 "'visual' komutu 'open' seçeneğinin ayarlanmış olmasını gerektirir" +177 "Boş dosya" +178 "Öncesinde F, f, T veya t araması yok" +179 "%s bulunamadı" +180 "Düzenlenecek dosya yok" +181 "İmleç bir sayıda değil" +182 "Ortaya çıkan sayı çok büyük" +183 "Ortaya çıkan sayı çok küçük" +184 "Bu satırda eşleşen karakter yok" +185 "Eşleşen karakter bulunamadı" +186 "Değiştirilecek karakter yok" +187 "Geçilecek başka ekran yok" +188 "Arama dizgisinden, satır ofsetinden ve/veya 'z' komutundan sonraki karakterler" +189 "Öncesinde arama dizgisi yok" +190 "Arama başlanan konumda tamamlandı" +191 "Kısaltma genişleme sınırını aştı: Karakterler çıkarıldı" +192 "İzin verilmeyen karakter; giriş için tırnak içine alın" +193 "Halihazırda eklemenin başında" +194 "Silinecek başka karakter yok" +195 "Hareket dosya sonunu geçti" +196 "Hareket satır sonunu geçti" +197 "İmleç hareket ettirilmedi" +198 "Halihazırda dosyanın başında" +199 "Hareket dosyanın başını geçti" +200 "Halihazırda ilk sütunda" +201 "Arabellekler komuttan önce belirtilmeli" +202 "Halihazırda dosya sonunda" +203 "Halihazırda satır sonunda" +204 "%s bir vi komutu değil" +205 "Kullanım: %s" +206 "Silinecek karakter yok" +207 "Q komutu ex uçbirim arabirimini gerektirir" +208 "Yinelenecek komut yok" +209 "Dosya boş" +210 "%s bir hareket komutu olarak kullanılamaz" +211 "Halihazırda komut kipi içinde" +212 "İmleç bir sözcükte değil" +214 "'windows' seçeneği değeri çok büyük, en çok %u olabilir" +215 "İliştir" +216 "Değişiklik yap" +217 "Komut" +218 "Ekle" +219 "Değiştir" +220 "Hareket ekran sonunu geçti" +221 "Hareket ekran başını geçti" +222 "Ekran bölünebilmesi için %d satırdan daha geniş olmalıdır" +223 "Arkaplan ekranı yok" +224 "Arkaplanda %s dosyasını düzenleyen bir ekran yok" +225 "Açık olan tek ekranınızı arkaplana alamazsınız" +226 "Ekran yalnızca %d satıra küçültülebilir" +227 "Ekran küçülemez" +228 "Ekran büyüyemez" +230 "Bu ekran askıya alınamaz" +231 "Yarıda kesildi: Eşlemlenen düğmeler çıkarıldı" +232 "vi: Geçici arabellek salıverilmedi" +233 "Bu uçbirimde %s düğmesi yok" +234 "Yalnızca bir arabellek belirtilebilir" +235 "Sayı şundan daha büyük: %lu" +236 "Yarıda kesildi" +237 "Geçici dosya oluşturulamıyor" +238 "Uyarı: %s sıradan bir dosya değil" +239 "%s halihazırda kilitlenmiş, oturum saltokunur" +240 "%s: Kaldır" +241 "%s: Kapat" +242 "%s: Kaldır" +243 "%s: Kaldır" +244 "Saltokunur dosya, yazılmadı; yok saymak için ! kullanın" +245 "Saltokunur dosya, yazılmadı" +246 "%s mevcut, yazılmadı; yok saymak için ! kullanın" +247 "%s mevcut, yazılmadı" +248 "Kısmi dosya, yazılmadı; yok saymak için ! kullanın" +249 "Kısmi dosya, yazılmadı" +250 "%s: Dosya bu kopyadan daha önce değiştirilmiş; yok saymak için ! kullanın" +251 "%s: Dosya bu kopyadan daha önce değiştirilmiş" +252 "%s: Yazım koruması kullanılabilir değildi" +253 "Yazılıyor..." +254 "%s: UYARI: DOSYA KIRPILMIŞ" +255 "Halihazırda bu grubun ilk etiketinde" +256 "%s: Yeni dosya: %lu satır, %lu karakter" +257 "%s: %lu satır, %lu karakter" +258 "%s çok fazla dosya adına genişletilmiş" +259 "%s: Sıradan bir dosya değil" +260 "%s: İyesi siz değilsiniz" +261 "%s: İyesi dışında başka bir kullanıcı tarafından da erişilebilir" +262 "Dosya son tam yazımdan bu yana değiştirilmiş; yazın veya yok saymak için ! kullanın" +263 "Dosya son tam yazımdan bu yana değiştirilmiş; yazın veya yok saymak için :edit! kullanın" +264 "Dosya son tam yazımdan bu yana değiştirilmiş; yazın veya yok saymak için ! kullanın" +265 "Dosya geçici; çıkarsanız değişiklikler atılacaktır" +266 "Dosya saltokunur, değişiklikler kendiliğinden yazılmaz" +267 "Günlük yeniden başlatıldı" +268 "Onayla? [ynq]" +269 "Sürdürmek için herhangi bir düğmeye basın: " +270 "Sürdürmek için herhangi bir düğmeye basın [ex komutu girmek için :]: " +271 "Sürdürmek için herhangi bir düğmeye basın [çıkış için q]: " +272 "Bu biçim %s ex uçbirim arabirimini gerektirir" +273 "ex girdisi kipine giriliyor" +274 "Komut başarısız, henüz bir dosya okunmadı." +275 " sürdür?" +276 "Beklenmedik karakter olayı" +277 "Beklenmedik dosya sonu olayı" +278 "Sorgu eşleşmesi bulunamadı" +279 "Beklenmedik yarıda kesme olayı" +281 "Beklenmedik yeniden boyama olayı" +282 "Halihazırda bu grubun son etiketinde" +283 "%s komutu ex uçbirim arabirimini gerektirir" +284 "Bu biçim %s 'secure edit' seçeneği ayarlandığında desteklenmez" +285 "Beklenmedik dizi olayı" +286 "Beklenmedik zaman aşımı olayı" +288 "Bölünebilmesi için ekran %d sütundan daha geniş olmalıdır" +289 "Kabuk genişletmeleri 'secure edit' seçeneği ayarlandığında desteklenmez" +290 "%s komutu 'secure edit' seçeneği ayarlandığında desteklenmez" +291 "set: %s seçeneği kapatılamaz" +292 "Ekran çok küçük." +293 "eklendi" +294 "değiştirildi" +295 "silindi" +296 "uç uca eklendi" +297 "taşındı" +298 "kaydırıldı" +299 "kopyalandı" +300 "satır" +301 "satır" +303 "Dosya son yazımdan bu yana değiştirilmiş." +304 "Kabuk genişletmesi başarısız" +305 "Bir '%s' düzenleme seçeneği belirtilmedi" +307 "Çalıştırılacak ex komutu yok" +308 "Bir komut çalıştırmak için , çıkmak için :q girin" +309 "Yardım için \"cscope help\" kullanın" +310 "Çalışan bir cscope bağlantısı yok" +311 "%s: Bilinmeyen arama türü: Şunlardan bir tanesini kullanın: %s" +312 "%d: Böyle bir cscope oturumu yok" +313 "set: %s seçeneği hiçbir zaman açılamaz" +314 "set: %s seçeneği hiçbir zaman 0 olarak ayarlanamaz" +315 "%s: İliştirildi: %lu satır, %lu karakter" +316 "Beklenmedik yeniden boyutlandırma olayı" +317 "Düzenlenecek %d dosya var" +319 "%d ekran arkaplana alındı; onları listelemek için :display kullanın" +320 "Bilinmeyen imleç konumu" +321 "Dosya kodlama dönüştürmesi desteklenmiyor" +322 "Girdi kodlama dönüştürmesi desteklenmiyor" +323 "Geçersiz girdi. Kırpıldı." +324 "%d numaralı satırda dönüştürme hatası" Copied: vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.owner (from r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.owner) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/tr_TR.ISO8859-9.owner Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/tr_TR.ISO8859-9.owner) @@ -0,0 +1 @@ +Emir SARI Copied: vendor/nvi/2.2.0/catalog/tr_TR.UTF-8.base (from r365495, vendor/nvi/dist/catalog/tr_TR.UTF-8.base) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/nvi/2.2.0/catalog/tr_TR.UTF-8.base Wed Sep 9 07:58:35 2020 (r365496, copy of r365495, vendor/nvi/dist/catalog/tr_TR.UTF-8.base) @@ -0,0 +1,304 @@ +002 "Satır uzunluÄŸu taşımı" +003 "%lu numaralı satır silinemiyor" +004 "%lu numaralı satıra iliÅŸtirilemiyor" +005 "%lu numaralı satırda ekleme yapılamıyor" +006 "%lu numaralı satır kaydedilemiyor" +007 "Son satır alınamıyor" +008 "Hata: %lu numaralı satır okunamıyor" +009 "Günlük dosyası" +010 "Günlükleme gerçekleÅŸtirilmiyor, geri alma olanaklı deÄŸil" +011 "Geri alınacak bir deÄŸiÅŸiklik yok" +012 "Günlükleme gerçekleÅŸtirilmiyor, geri alma olanaklı deÄŸil" +013 "Günlükleme gerçekleÅŸtirilmiyor, ileri sarma olanaklı deÄŸil" +014 "Yinelenecek bir deÄŸiÅŸiklik yok" +015 "%s/%d: Günlük kayıt hatası" +016 "Vi'nin standart girdisi ve çıktısı bir uçbirim olmalı" +017 "Ä°m %s: Ayarlanmamış" +018 "Ä°m %s: Satır silinmiÅŸ" +019 "Ä°m %s: Ä°mleç konumu artık yok" +020 "Hata: " +021 "yeni dosya +022 "adı deÄŸiÅŸti" +023 "deÄŸiÅŸtirildi" +024 "deÄŸiÅŸtirilmedi" +025 "KÄ°LÄ°DÄ° AÇILDI" +026 "saltokunur" +027 "satır %lu/%lu [%ld%%]" +028 "boÅŸ dosya" +029 "%lu. satır" +030 "%s dosyası bir ileti kataloÄŸu deÄŸil" +031 "Öntanımlı %s seçeneÄŸi ayarlanamadı" +032 "Kullanım: %s" +033 "set: %s seçeneÄŸi yok: 'set all' tüm seçenek deÄŸerlerini verir" +034 "set: [no]%s seçeneÄŸi bir deÄŸer almaz" +035 "set: %s seçeneÄŸi bir Boole deÄŸeri deÄŸil" +036 "set: %s seçeneÄŸi: %s" +037 "set: %s seçeneÄŸi: %s: DeÄŸer taşımı" +038 "set: %s seçeneÄŸi: %s izin verilmeyen bir sayı" +039 "set: %s seçeneÄŸi bir Boole deÄŸeri deÄŸil" +040 "Ekran sütun sayısı çok küçük, ÅŸundan daha az: %d" +041 "Ekran sütun sayısı çok büyük, ÅŸundan daha çok: %d" +042 "Ekran satır sayısı çok küçük, ÅŸundan daha az: %d" +043 "Ekran satır sayısı çok büyük, ÅŸundan daha çok: %d" +044 "Lisp seçeneÄŸi eklenmemiÅŸ" +045 "Ä°letiler kapatılmamış: %s" +046 "Ä°letiler açılmamış: %s" +047 "%s seçeneÄŸi iki karakterli öbekler biçiminde olmalı" +053 "BaÅŸlangıç arabelleÄŸi boÅŸ" +054 "%s arabelleÄŸi boÅŸ" +056 "Oturum baÅŸarısız olursa deÄŸiÅŸiklikler kurtarılamaz" +057 "Dosya, kurtarma için kopyalanıyor..." +058 "Koruma baÅŸarısız oldu: %s" +059 "Oturum baÅŸarısız olursa deÄŸiÅŸiklikler kurtarılamaz" +060 "Dosya yedeklemesi baÅŸarısız oldu: %s" +061 "Dosya, kurtarma için kopyalanıyor..." +062 "%u kullanıcısı üzerine bilgi bulunamadı" +063 "Kurtarma dosyası kilitlenemiyor" +065 "Kurtarma dosyası" +066 "%s: Hatalı oluÅŸturulmuÅŸ kurtarma dosyası" +067 "%s: Hatalı oluÅŸturulmuÅŸ kurtarma dosyası" +068 "Kurtarılacak %s adında sizce okunabilir bir dosya yok" +069 "Bu dosyanın kurtarabileceÄŸiniz eski sürümleri var" +070 "KurtarabileceÄŸiniz baÅŸka dosyalar var" +071 "E-posta gönderilmedi: %s" +072 "Dosya boÅŸ, aranacak bir ÅŸey yok" +073 "Dizgi bulunamadan dosyanın sonuna eriÅŸildi" +074 "Arama dizgisi yok" *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***