《 Python树莓派编程》——2.6 文本编辑器


2.6 文本编辑器

不同于Windows和Mac系统(它们有诸如Notepad、Wordpad和Textedit等文本编辑器),在当谈及文本编辑器时,Linux有很多选择。在大多数发行版本中都包含一个标准的文档编辑器,叫做gedit。树莓派内也含有这个轻量级的编辑器。树莓派内置的编辑器,Leafpad,是一款十分优秀的编辑器。同时你也可以使用nano对文本进行编辑,这是另一款预装在树莓派内的文本编辑器,具有十分直观的界面。但当你需要用树莓派进行一些比较专业的编程工作时,你可能会使用Linux两个强有力的编辑器:vi和emacs。

vi和emacs不仅是强大的文本编辑器,同样也可用作IDE(Integrated Development Enviornment,集成开发环境),因为在其中编写时关键词的颜色会发生改变(语法高亮),而且单词也会自动补全。二者都可进行外部扩展,且可定制化。例如:emacs有超过2000条内置命令,而vi因其具有众多接口及版本,可进行定制化。实际上,vi的一个版本,Vim(Vi Improved,Vi提升版),也包含在几乎每个Linux发行版中,并且之后我会对其进行进一步讨论,因为相对于vi编辑器而言,vim更像一个IDE。通过Lisp扩展,emacs可以成为用户可编程的程序,但vi的不同版本可以满足每个人的不同喜好。

然而,在这两种编辑器之间存在一些竞争。Linux和UNIX用户只对其中一种编辑器持有浓烈的热情,对另一款则报以极大的偏见。因此当他们讨论二者各自的优缺点时,会变得十分激动。作为一名有良知的作者,我会在本书中对这两款软件都进行介绍,但作为一名执着的emacs用户,我会尽量避免对vim的批判。在本书中,我不会提及讨论的程序和脚本文件是如何编写的,最多是给出结果。你甚至可以用树莓派的Leafpad进行编程,这款编辑器同样适用。

2.6.1 vim、emacs与nano

vim是一个模式编辑器。它有两种工作模式:插入模式和普通模式。插入模式中,你输入的内容会成为文档的一部分。普通模式是用来控制编辑会话的。例如,当你在普通模式下输入字母“i”,则会切换至输入模式。当你再次输入“i”时,在你光标的位置上会输入字母“i”,正如一个文档编辑器该做的那样。通过对两种工作模式的切换,你可以创建并编辑你的文档。

另一方面,emacs则更为直观。你可以通过方向键在文档中进行移动,并且你在键盘上输入的内容都会出现在光标的位置之上。特殊的命令,例如复制/粘贴等这些通过按下Ctrl键实现的操作,通常都跟在其他按键之后,一般都是“x”。例如,如果你想要保存当前的文档,你需要先按下Ctrl-x,再按下Ctrl-s,在emacs的菜单中也突出显示了C-x C-s的组合。

然而,nano编辑器比之前的两者都要直观。你可以像其他编辑器一样输入文字,而且你经常使用的命令会显示在屏幕底部。

如果你想都体验一下(在你决定一件事之前,都尝试一下是个好主意),要确保你已经安装了三个编辑器。为此,你可以输入以下命令进行安装:

 

以及

 

vim编辑器应该已经预装在树莓派中了,nano编辑器也一样。但emacs应该没有。需要注意,这将会下载大量的数据,所以安装这些程序及其所依赖的文件将会花费一定时间。所以在安装的同时,喝杯咖啡或者吃顿晚饭是个不错的选择。

1. 使用vim

我之前说过,vim是一个模式编辑器,这意味着你需要在输入模式和普通模式之间进行切换。现在让我们尝试着编写一个测试文件,将树莓派转移到桌面并输入:

 

之后,vim编辑器会在终端进行显示,而不是新建另一个窗口,因此如果你不适应的话,可能会有些困惑。你应该会看到一个类似于图2-4的界面。

vim编辑器是在普通模式下打开的,这意味着你不能立即编写文件。为了正常地编辑文件,你需要按下“i”键切换到输入模式。之后屏幕左下方会显示“INSERT”这个单词—无论是在输入模式或者普通模式,这都是一种很方便的提醒方式。当你完成了要输入的信息后,按下Esc键便可返回普通模式。在普通模式下,你可以通过方向键浏览文档,在输入模式下同样可以,但只有在输入模式下才可以改变或添加信息。当需要保存文件时,至少按一次Esc键确保你正处于普通模式下,输入“:w”(不带引号)并按Enter键即可退出。如果要同时保存并退出的话,输入“:x”(同样不带引号)并按下Enter键。很明显,如果你正处于输入模式,当输入这些字符时,结果只可能是将:w或:x添加至你的文档。

 

vim需要花一定时间去适应,而且很多人会把这两种不同模式的操作弄混。如果你倾向于这款文档编辑器,网上有很多教程教你如何充分发挥其潜力。

2. 使用emacs

emacs(至少对我而言)比vim更直观一些。尤其是当你第一次使用的时候。首先,打开一个终端并转到你测试文件的位置,例如桌面。之后输入:

 

emacs会查找testfile.txt,如果该文件存在,emacs会打开该文件。如果不存在的话,会创建一个新的文件。之后你会看到一个空的面板,如图2-5所示。

之后你便可以开始编写了。表2-3列出了emacs中常见一些的命令。

 

 

因此,如果你想要移动一行文字,首先将光标移至这一行的开始位置,按下Ctrl及空格键,界面左下方的状态会变为“Mark activated”。这时将光标移至行末,并按下Ctrl和“e”键。左下方的状态文字便消失了。现在你已经选中了那一行的文字,通过Ctrl+w对该行文字进行剪切,将光标移动到需要粘贴的位置,按下Ctrl+y便可进行粘贴操作。

适应这个过程会花费一些时间,所以如果你决定使用emacs的话,网上有很多教程可以指导你学习按键的一些操作。一旦学会了这些操作,使用起来会更加得心应手。但记住一点:一旦你不记得快捷键的话,记得去菜单里找,大多数命令都可在菜单中找到。

3. 使用nano

之前提及nano编辑器可能是3种编辑器中最容易使用且最容易适应的一个。在nano中编辑文件,只需在终端中输入:

 

之后你就会看到如图2-6所示的界面。同其他两个编辑器一样,如果输入的文件存在,nano会打开该文件,不然则会创建一个新的文件。

 

如图2-6所示,常用的命令都在屏幕下方罗列出来,其中上箭头(^)标志着Ctrl键。如果需要保存一个文件,输入Ctrl+X键退出,在退出之前会提示是否需要保存该文件,以及文件名的信息。一般来说,输入“Y”并按下Enter键可以保存刚刚打开或创建的文件。

2.6.2 Leafpad

我准备介绍的另一款编辑器是Leafpad编辑器,这是一款全特性的(可能是轻量级的)、具有图形化界面且预装在树莓派中的编辑器。打开树莓派桌面靠左下侧的图标,选择“Accessories”后再选择“Leafpad”即可打开该编辑器(见图2-7)。

 

可以看到,它同你使用过的大多数编辑器类似,如Textedit或者Notepad。如果你习惯于使用这一类编辑器,选择这款即可。我不会经常提起这款编辑器,因为它的主要缺点是必须在树莓派图形化桌面才可以使用。如果你只是远程登录树莓派,并且工作在命令行模式下,Leafpad是无法工作的。

时间: 2024-08-01 12:50:13

《 Python树莓派编程》——2.6 文本编辑器的相关文章

《 Python树莓派编程》——3.3 Python入门

3.3 Python入门 让我们开始学习Python吧.在树莓派上运行Python有3种不同的方法:使用内置的IDLE解释器,在终端内运行,或者用作脚本文件.我们先介绍IDLE. 3.3.1 通过IDLE运行Python IDLE编辑器类似于一个"沙盒",你无需编写全部脚本内容便可同Python进行交互,并观测它所做的事情.IDLE代表"Integrated DeveLopment Environment",集成开发环境,它也代表了对Eric Idle的一种尊敬,E

《 Python树莓派编程》——导读

Preface 前 言 在2006年,当Eben Upton和其他树莓派基金会的创办人看到大学计算机专业学生的编程状况时,他们感到无比沮丧.在美国,计算机专业的编程课程被缩减为"CS 101:如何使用Word程序"和"CS 203:优化你的Facebook主页".他们意识到,不是所有人在上大学之前都学过编程.因此,他们酝酿了一个计划--打造一种小型廉价的计算机,使孩子们可以更加方便地学习编程,就如同昔日的Amiga.Spectrum和Commodore 64.随后,

《 Python树莓派编程》——3.4 利用Python进行编程

3.4 利用Python进行编程 现在,你已经了解了数据类型.接下来,让我们看看如何在实际程序中使用它们.当你创建一个Python程序时,首先必须从编译器的环境中退出来,并且打开一个文本编辑器,如emacs或者树莓派的Leafpad.在创建完程序后,将其".py"的扩展名保存.之后,你便可以通过输入以下命令运行该程序: 在众多的编程语言中,Python的语法也十分与众不同.Python使用空格或者缩进来分开不同的代码块.C语言等其他语言用花括号区分不同的代码块,如if语句:Python

Python树莓派编程2.7 总结

2.7 总结 本章简单介绍了Linux的一些基本知识.虽然这不能使你成为一名专家,但它清晰地展示了这个功能强大的操作系统的用途.你可以仅通过命令行在文件系统中进行导航,并且你已经了解了何为shell.同样,你已经知道了几种不同的文本编辑器,并且也许已经找到了适合自己的一款编辑器.一旦熟悉了树莓派,你可能会在一台或多台其他的计算机上也安装Linux系统.这很好,我也不会告诉其他人的. 在下一章,我会尽全力把Python介绍清楚.

《 Python树莓派编程》——2.7 总结

2.7 总结 本章简单介绍了Linux的一些基本知识.虽然这不能使你成为一名专家,但它清晰地展示了这个功能强大的操作系统的用途.你可以仅通过命令行在文件系统中进行导航,并且你已经了解了何为shell.同样,你已经知道了几种不同的文本编辑器,并且也许已经找到了适合自己的一款编辑器.一旦熟悉了树莓派,你可能会在一台或多台其他的计算机上也安装Linux系统.这很好,我也不会告诉其他人的. 在下一章,我会尽全力把Python介绍清楚.

《 Python树莓派编程》——第1章 树莓派简介 第1.1 树莓派的历史

第1章 树莓派简介 如果你现在有一台树莓派,你会用它来做什么呢?也许你已经熟悉了树莓派的基本结构,正在考虑可以拿它来做些什么:也许你之前使用过计算机但并不熟悉Linux或树莓派默认的Raspbian操作系统:也许你已经是一位Linux系统的爱好者,但却不知道如何用Python进行编程,而且正准备好好学一学:也许你根本就不了解计算机,仅仅停留在点击"开始"菜单,转发电子邮件,上网等操作,但是听说过"树莓派"这么个新奇的东西,想了解一下它到底是什么. 无论是何原因,欢迎

《 Python树莓派编程》——第3章 Python介绍 3.1 脚本语言与程序设计语言

第3章 Python介绍 你可能还记得我们在第1章中提到,制作树莓派的初衷是为了让每个人(尤其是孩子们)都拥有编程的环境.为了实现该目的,树莓派的创造者们想要推出一台价格相对便宜但性能十分强劲的计算机,每个人都可以将这台计算机连接至键盘.鼠标.显示器进行编程. 创造树莓派的另一个原因是希望简化编程.为此,Eben Upton和他的同伴决定将Python语言集成到树莓派的操作系统中.他们认为,Python是一种强大的编程语言,那些没有编程经验的人也可以轻松快速地学会. 在本章,我将对Python进

Python树莓派编程第3章

第3章 Python介绍 你可能还记得我们在第1章中提到,制作树莓派的初衷是为了让每个人(尤其是孩子们)都拥有编程的环境.为了实现该目的,树莓派的创造者们想要推出一台价格相对便宜但性能十分强劲的计算机,每个人都可以将这台计算机连接至键盘.鼠标.显示器进行编程. 创造树莓派的另一个原因是希望简化编程.为此,Eben Upton和他的同伴决定将Python语言集成到树莓派的操作系统中.他们认为,Python是一种强大的编程语言,那些没有编程经验的人也可以轻松快速地学会. 在本章,我将对Python进

《 Python树莓派编程》——1.2 探索树莓派

1.2 探索树莓派 那树莓派上究竟有什么呢?有什么能适合这个如此之小的设备呢? 目前为止,一共有两款树莓派:A版和B版(B版详情见图1-2).两个版本之间的差距非常小,B版仅比A版多了一点功能,当然价格也要稍微贵一些.A版内存为256MB,而B版内存为512MB:A版有一个USB接口,而B版有两个.A版不具备以太网口,而B版有一个.你可以根据自己的需求订购任何一款,A版为25美元,而B版售价35美元.由于二者在价格上差距不是很大,因此我建议购买B版.因为有一个或两个USB端口之间的差别是非常大的