Skip to the content.

上一页      主目录      下一页

6. Editors


对于那些希望在LFS系统上使用其他编辑器的人来说,本章在LFS书中有引用。您还将看到在安装GUI库之后重新编译一些LFS安装的程序是如何受益的。

6.1 Bluefish-2.2.12


简介Bluefish

Bluefish是一个针对程序员和网页设计师的GTK+文本编辑器,有许多选项来编写网站,脚本和编程代码。Bluefish支持许多编程和标记语言,它专注于编辑动态和交互式网站。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Bluefish 依赖

必要

GTK+-2.24.33GTK+-3.24.36 (如果两者都安装了,configure默认使用GTK+ 3)

推荐

desktop-file-utils-0.26 (用于更新桌面数据库)

可选

enchant-2.3.3 (用于拼写检查), Gucharmap-15.0.2, PCRE-8.45Jing

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/bluefish

安装Bluefish

运行以下命令安装Bluefish:

./configure --prefix=/usr --docdir=/usr/share/doc/bluefish-2.2.12 &&
make

这个包没有附带测试套件。

现在,作为root用户:

make install

注意

这个包将图标文件安装到/usr/share/icons/hicolor层次结构中,将桌面文件安装到/usr/share/applications层次结构中。您可以通过更新/usr/share/icons/hicolor/icon-theme.cache/usr/share/applications/mimeinfo.cache来提高系统性能和内存使用。要执行更新,您必须有desktop-file-utils-0.26 (用于桌面缓存),并以root用户发出以下命令:

gtk-update-icon-cache -t -f --include-image-data /usr/share/icons/hicolor &&
update-desktop-database

内容

安装程序: bluefish

安装库: several under /usr/lib/bluefish/

安装目录: /usr/lib/bluefish, /usr/share/bluefish, /usr/share/doc/bluefish-2.2.12, and /usr/share/xml/bluefish

简要描述

bluefish 是一个用于标记和编程的GTK+文本编辑器。

6.2 Ed-1.19


简介Ed

Ed是一个面向行的文本编辑器。它用于以交互方式或通过shell脚本创建、显示、修改和以其他方式操作文本文件。Ed不是很多人用的词。这里描述它是因为如果遇到基于ed的补丁文件,补丁程序可以使用它。这种情况很少发生,因为现在更喜欢基于差异的补丁。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Ed 依赖

必要解压缩tarball

libarchive-3.6.2 (for bsdtar)

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/ed

安装Ed

运行以下命令安装Ed:

./configure --prefix=/usr &&
make

要测试结果,执行: make check.

现在,作为root用户:

make install

内容

安装程序: ed 和 red

安装库: None

安装目录: None

简要描述

ed 是一个面向行的文本编辑器。

red 是一个受限制的ed – 它只能编辑当前目录下的文件,不能执行shell命令。

6.3 Emacs-28.2


简介Emacs

Emacs包包含一个可扩展的、可定制的、自文档化的实时显示编辑器。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Emacs 依赖

推荐

HarfBuzz-7.0.0, giflib-5.2.1, GnuTLS-3.8.0, jansson-2.14, 和 libtiff-4.5.0

可选

a graphical environment, alsa-lib-1.2.8, Cairo-1.17.6, dbus-1.14.6, GConf-3.2.6, gobject-introspection-1.74.0, gsettings-desktop-schemas-43.0, GPM-1.20.7, GTK+-2.24.33 or GTK+-3.24.36, ImageMagick-7.1.0-61, Little CMS-2.14, libjpeg-turbo-2.1.5.1, libpng-1.6.39, librsvg-2.54.5, libxml2-2.10.3, MIT Kerberos V5-1.20.1, Valgrind-3.20.0, intlfonts, libungif, libotf, and m17n-lib - 正确显示像印度语和高棉语这样复杂的文字,以及需要阿拉伯语整形支持的文字(阿拉伯语和波斯语), mailutils, 和 libXaw3d

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/emacs

安装Emacs

运行以下命令安装Emacs:

./configure --prefix=/usr &&
make

如果make成功,您可以通过运行src/emacs -Q来测试结果,这是将要安装的程序及其辅助文件。这将启动并显示应用程序打开屏幕。

现在,作为root用户:

make install &&
chown -v -R root:root /usr/share/emacs/28.2

注意

这个包安装图标文件到/usr/share/icons/hicolor层次结构,你可以通过更新/usr/share/icons/hicolor/index.theme来提高系统性能和内存使用。要执行更新,您必须安装GTK+-2.24.33GTK+-3.24.36,并以root用户发出以下命令:

gtk-update-icon-cache -qtf /usr/share/icons/hicolor

命令解释

--with-imagemagick: 如果您已经安装了 ImageMagick-7.1.0-61 并希望链接到它,请使用此选项。

--with-gif=no: 如果您没有安装,请使用此选项 giflib-5.2.1libungif.

--with-tiff=no: 如果您没有安装,请使用此选项 libtiff-4.5.0.

--with-gnutls=no: 如果您没有安装,请使用此选项 GnuTLS-3.8.0.

--without-harfbuzz: 如果您没有安装,请使用此选项 HarfBuzz-7.0.0.

--with-json=no: 如果您没有安装,请使用此选项 jansson-2.14.

内容

安装程序: ctags, ebrowse, emacs (symlink), emacs-28.2, emacsclient, and etags

安装库: None

安装目录: /usr/libexec/emacs and /usr/share/emacs

简要描述

ctags 为源代码创建交叉引用标记文件数据库文件。

ebrowse 允许从emacs内部浏览c++类层次结构。

emacs 是一个编辑器。

emacsclient 将一个emacs会话附加到一个已经运行的emacsserver实例。

etags 是另一个程序生成源代码交叉引用标记文件。

6.4 Gedit-44.2


简介Gedit

Gedit包包含一个用于GNOME桌面的轻量级UTF-8文本编辑器。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Gedit 依赖

必要

git-2.39.2, gsettings-desktop-schemas-43.0, gtksourceview4-4.8.4, itstool-2.0.7, libpeas-1.34.0, 和 tepl-6.4.0

推荐

gspell-1.12.0, Gvfs-1.50.3 (运行时), ISO Codes-4.12.0, 和 PyGObject-3.42.2 (Python 3 模块)

可选

GTK-Doc-1.33.2, Vala-0.56.4, 和 zeitgeist

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/gedit

安装Gedit

运行以下命令安装Gedit:

mkdir gedit-build &&
cd    gedit-build &&

meson setup --prefix=/usr       \
            --buildtype=release \
            -Dgtk_doc=false     \
            .. &&
ninja

要测试结果,执行: ninja test.

现在,作为root用户:

ninja install

注意

如果您使用”DESTDIR”方法将包安装到系统中,/usr/share/glib-2.0/schemas/gschemas.compiled将不会被更新/创建。以root用户使用以下命令创建(或更新)文件:

glib-compile-schemas /usr/share/glib-2.0/schemas

命令解释

--buildtype=release: 指定适合于包的稳定版本的构建类型,因为默认值可能会产生未优化的二进制文件。

-Dgtk_doc=false: 此开关禁用生成API文档。如果您安装了GTK-Doc-1.33.2并希望生成API文档,请忽略此开关。

内容

安装程序: gedit

安装库: libgedit-44.so

安装目录: /usr/include/gedit-44 和 /usr/{lib,share,share/help/*}/gedit

简要描述

gedit 是与GNOME Desktop集成的轻量级文本编辑器。

6.5 JOE-4.6


简介JOE

JOE (JOE自己的编辑器)是一个小型文本编辑器,能够模拟WordStar、Pico和Emacs。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/joe

安装JOE

运行以下命令安装JOE:

./configure --prefix=/usr     \
            --sysconfdir=/etc \
            --docdir=/usr/share/doc/joe-4.6 &&
make

这个包没有附带测试套件。

现在,作为root用户:

make install &&

install -vm 755 joe/util/{stringify,termidx,uniproc} /usr/bin

配置JOE

配置文件

/etc/joe/jmacsrc, /etc/joe/joerc, /etc/joe/jpicorc, /etc/joe/jstarrc, /etc/joe/rjoerc, 和 ~/.joerc

内容

安装程序: jmacs, joe, jpico, jstar, rjoe, stringify, termidx, 和 uniproc

安装库: None

安装目录: /etc/joe, /usr/share/joe, 和 /usr/share/doc/joe-4.6

简要描述

jmacs 是指向joe的符号链接,用于启动Emacs仿真模式。

joe 是一个小型文本编辑器,能够模拟WordStar, Pico和Emacs。

jpico 是指向joe的符号链接,用于启动Pico仿真模式。

jstar 是指向joe的符号链接,用于启动WordStar仿真模式。

rjoe 是一个指向joe的符号链接,它限制joe只能编辑命令行中指定的文件。

stringifyjoe用来将rc和。jsf文件转换为C文件的程序(参见/usr/share/doc/joe-4.6/util/README)。

termidxjoe用来生成termcap索引文件的程序 (参见/usr/share/doc/joe-4.6/util/README).

uniproc 是一个由joe用来生成joe的unicode数据库文件unicat.c的程序,从Blocks.txt casefolders .txt EastAsianWidth.txt和UnicodeData.txt(找到它们在/usr/share/doc/joe-4.6/util;参见usr/share/doc/joe-4.6/util/README)。

6.6 Kate-22.12.2


简介Kate

Kate包包含一个高级的基于KF5的图形文本编辑器。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Kate 依赖

必要

KDE Frameworks-5.103.0

可选

libgit2

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/kate5

安装Kate

运行以下命令安装Kate:

mkdir build &&
cd    build &&

cmake -DCMAKE_INSTALL_PREFIX=$KF5_PREFIX  \
      -DCMAKE_BUILD_TYPE=Release          \
      -DBUILD_TESTING=OFF                 \
      -Wno-dev .. &&
make

这个包没有附带测试套件。

现在,作为root用户:

make install

Contents

安装程序: kate 和 kwrite

安装库: Several plugins under $KF5_PREFIX/lib/plugins

安装目录: $KF5_PREFIX/lib/plugins/ktexteditor, $KF5_PREFIX/lib/plugins/plasma/dataengine, $KF5_PREFIX/share/doc/HTML/*/{kate,katepart,kwrite}, $KF5_PREFIX/share/{kateproject,katexmltools}, 和 $KF5_PREFIX/share/plasma/plasmoids/org.kde.plasma.katesessions

简要描述

kate 是kde的高级文本编辑器。

kwrite 是一个用于KDE的文本编辑器,它是kate的轻量级版本。

6.7 Mousepad-0.5.10


简介Mousepad

Mousepad是用于Xfce桌面环境的简单GTK+ 3文本编辑器。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Mousepad 依赖

必要

gtksourceview4-4.8.4

可选

DConf-0.40.0 (运行时) 和 dbus-glib-0.112

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/mousepad

安装Mousepad

运行以下命令安装Mousepad:

./configure --prefix=/usr --enable-keyfile-settings &&
make

这个包没有附带测试套件。

现在,作为root用户:

make install

命令解释

--enable-keyfile-settings: 使用GSettings密钥文件后端,而不是默认的 DConf-0.40.0.

内容

安装程序: mousepad

安装库: None

安装目录: None

简要描述

mousepad 是一个简单的GTK+ 3文本编辑器。

6.8 Nano-7.2


简介Nano

Nano包包含一个小而简单的文本编辑器,旨在取代Pine包中的默认编辑器Pico。

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/Nano

安装Nano

Install Nano 运行以下命令安装:

./configure --prefix=/usr     \
            --sysconfdir=/etc \
            --enable-utf8     \
            --docdir=/usr/share/doc/nano-7.2 &&
make

这个包没有附带测试套件。

现在,作为root用户:

make install &&
install -v -m644 doc/{nano.html,sample.nanorc} /usr/share/doc/nano-7.2

命令解释

--enable-utf8: 此开关在Nano中启用unicode支持。

配置 nano

配置文件

/etc/nanorc and ~/.nanorc

配置信息

示例配置(创建为系统范围的/etc/nanorc或个人的~/.nanorc的文件)

set autoindent
set constantshow
set fill 72
set historylog
set multibuffer
set nohelp
set positionlog
set quickblank
set regexp

检查安装的文档目录中的sample.nanorc文件。它包括颜色配置,并在注释中包含了一些文档。

/usr/share/nano/目录中,为几种文件类型提供了语法高亮显示。例如,对于shell脚本,你可以在个人或全局配置文件中插入include /usr/share/nano/sh.nanorc。如果您希望突出显示所有支持的文件,请使用include /usr/share/nano/*.nanorc。这个include不会下降到extra目录。将所需文件向上移动一层。

内容

安装程序: nano 和 rnano (符号链接)

安装库: None

安装目录: /usr/share/nano 和 /usr/share/doc/nano-7.2

简要描述

nano 是一个小的,简单的文本编辑器,旨在取代Pico, Pine包中的默认编辑器。

rnanonano的受限模式。

6.9 Vim-9.0.1273


简介Vim

Vim包是VI IMproved的缩写,包含了一个vi克隆版本,与原来的vi相比,它具有额外的功能。

默认的LFS指令将vim安装为基本系统的一部分。如果您希望将vim与X链接,则应该重新编译vim以启用GUI模式。不需要特殊的指令,因为X支持是自动检测到的。

注意

vim的版本每天都在变化。获取最新版本,请访问 https://github.com/vim/vim/releases.

已知此包可以使用LFS 11.3平台进行构建并正常工作。

包信息

Vim 依赖

推荐

a graphical environmentGTK+-3.24.36

可选

GPM-1.20.7, Lua-5.4.4, rsync-3.2.7, 和 Ruby-3.2.1

用户笔记: https://wiki.linuxfromscratch.org/blfs/wiki/vim

安装Vim

注意

如果您重新编译Vim以链接到X,并且您的X库不在根分区上,那么您将不再拥有用于紧急情况的编辑器。您可以选择安装一个额外的编辑器,不将Vim链接到X,或者将当前的vim可执行文件以不同的名称(如vi)移动到/bin目录下。

运行以下命令安装Vim:

注意

如果您打算运行测试并且没有在/usr中安装Xorg,请将LDFLAGS=’-L$XORG_PREFIX/lib’追加到下面的配置行。

echo '#define SYS_VIMRC_FILE  "/etc/vimrc"' >>  src/feature.h &&
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h &&

./configure --prefix=/usr        \
            --with-features=huge \
            --enable-gui=gtk3    \
            --with-tlib=ncursesw &&
make

注意

如果全局配置文件/etc/vimrc引用了VIMRUNTIME环境变量,一些测试可能会抱怨无法找到相应的目录并等待用户输入。如果是这种情况,则应该在运行测试之前保存并删除该文件。

要测试结果,执行: make -j1 test. 即使其中一个测试未能在src/testdir中生成文件test.out,其余测试仍将执行。如果一切顺利,日志将报告ALL DONE。一些被标记为“不可靠”的测试可能偶尔会失败,可以忽略不计。如果将输出重定向到文件,以及在“屏幕”会话中运行测试,则已知测试会失败。

注意

一些颜色测试期望在xterm终端模拟器下执行。

现在,作为root用户:

make install

默认情况下,Vim的文档安装在/usr/share/vim中。下面的符号链接允许通过/usr/share/doc/vim-9.0.1273访问文档,使其与其他软件包的文档位置一致:

ln -snfv ../vim/vim90/doc /usr/share/doc/vim-9.0.1273

如果希望更新运行时文件,请执行以下命令 (需要 rsync-3.2.7):

rsync -avzcP --exclude="/dos/" --exclude="/spell/" \
    ftp.nluug.nl::Vim/runtime/ ./runtime/

安装运行时文件并重新生成tags文件,作为root用户问题:

make -C src installruntime &&
vim -c ":helptags /usr/share/doc/vim-9.0.1273" -c ":q"

命令解释

--with-features=huge: 此开关启用Vim中可用的所有附加功能,包括对多字节字符的支持。

--with-tlib=ncursesw: 这个开关强制Vim链接到libncursesw库。

--enable-gui=no: 这将阻止GUI的编译。Vim仍然会链接到X,因此一些特性,如客户机-服务器模型或x11选择(剪贴板)仍然可用。

--without-x: 如果不希望将Vim与X链接,请使用此开关。

--enable-luainterp, --enable-perlinterp, --enable-python3interp=dynamic, --enable-tclinterp --with-tclsh=tclsh, --enable-rubyinterp: 这些选项包括Lua、Perl、Python3、Tcl或Ruby解释器,它们允许在vim脚本中使用其他应用程序代码。所有的--enable-... options可以接受=dynamic,以便在需要时动态加载解释器。这是Python 3防止分段错误所必需的。对于tcl,有必要指出tclsh可执行文件的名称,因为configure只搜索带有旧版本的版本名。

配置 Vim

配置文件

/etc/vimrc and ~/.vimrc

配置信息

Vim有一个集成的拼写检查器,你可以通过在Vim窗口中发出以下命令来启用它:

:setlocal spell spelllang=ru

此设置将为当前会话启用俄语的拼写检查。

默认情况下,Vim只安装英语语言的拼写文件。如果语言的拼写文件不可用,那么Vim将调用$VIMRUNTIME/plugin/spellfile.vim插件并尝试获取 *.spl 和可选的 *.sug 通过使用$VIMRUNTIME/plugin/netrwPlugin.vim插件,从vim ftp服务器中获取。

或者,您可以手动下载.spl和.sug从: ftp://ftp.vim.org/pub/vim/runtime/spell/ 并将它们保存到~/.vim/spell/usr/share/vim/vim90/spell/

要了解Vim-9.0.1273中的新内容,请执行以下命令:

:help version-9.0.1273

有关设置Vim配置文件的其他信息,请参见 The vimrc Fileshttps://vim.fandom.com/wiki/Example_vimrc.

内容

重新安装的文件列表以及它们的简短描述可以在LFS Vim Installation Instructions中找到。

安装程序: gview, gvim, gvimdiff, gvimtutor, rgview, 和 rgvim

安装库: None

安装目录: /usr/share/vim

简要描述

gview 以只读模式启动gvim

gvim 是在X下运行的编辑器,包含一个GUI。

gvimdiff 使用gvim编辑文件的两个或三个版本,并显示差异。

gvimtutor 教授gvim的基本键和命令。

rgviewgview的限制版本。

rgvimgvim的限制版本。

上一页      主目录      下一页