我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 发现内网关于工具方面的使用资料很少,发几篇emacs的 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

独飞の孤心



性别: 帅哥 状态: 该用户目前不在线
头衔: 孽缘!
等级: 荣誉会员
家族: 单身贵族
发贴: 4484
威望: 3
浮云: 496
在线等级:
注册时间: 2005-10-12
最后登陆: 2011-09-23

5come5帮你背单词 [ spring /spriŋ/ B n. 弹簧,泉,源泉;vi. 弹跳 ]


发现内网关于工具方面的使用资料很少,发几篇emacs的

[backcolor=#FF0000]实战手册(上)


五、Linux下的常用软件--Emacs 
        有了上面的基础,你已经可以自由的使用Linux的控制台了。但是,光靠这些,你还不能编辑和修改文件,不能归档和压缩(解压缩)文件,不能享受影音娱乐和多媒体。在控制台下,我们确实可以做很多事情,包括听音乐。下面我们来看看控制台下最强大的应用软件--Emacs 
  Emacs是Linux下的强大的文本编辑环境,说它是一个单纯的文本编辑器就太小看它了。说出来别被吓到,Emacs可以编辑文件,浏览互联网,访问FTP,收发电子邮件,使用控制台命令,编译和调试程序等等。它简直可以充当一个操作系统了!但是,正是因为它拥有这么多的功能,使得想学习使用它的人必须经过一段痛苦的历程。Emacs实在是太复杂了。 
        让我们现来见识以下Emacs的庐山真面目吧。 
  $emacs  newtext.txt              /*启动Emacs,用它来创建一个新文件newtext.txt*/ 
        如果你是在控制台下开的Emacs,那你可以忽略最上面一行的菜单栏。它在控制台下是没用的。这一点和MS-DOS下的EDIT完全不同。开始的时候我就很不习惯没有Alt-F召唤出的菜单。但是这并不意味Emacs就没有菜单。它有。你按下F10看看(或者Esc-`)。那就是它的菜单。你可以按照它的提示使用。退出菜单用Ctrl-g或者连按三下ESC(这是退出一切Emacs命令的通用方法)。 
        我们已经新建了一个文件,你现在可以直接输入文字了。这和普通的文本编辑器没区别。 
  保存文件的方法是“Ctrl-x  Ctrl-s”;文件另存为是“Ctrl-x  Ctrl-w”;打开新文件是“Crtl-x  Ctrl-f”;退出Emacs是“Ctrl-x  Ctrl-c”。还是那句老话——晕头转向了就退出,没什么可怕的。 
        在Emacs里有很多向上面的使用组合键的命令。这也是Emacs的复杂之处,需要背的命令太多。记不住了,你可以使用它的菜单。在X下你可以使用鼠标和它的菜单栏(菜单栏这时才有用)。 
        Emacs是支持多文本多窗口同时编辑的。因此你可以打开多个文件,然后在不同的“窗口”中切换。——注意,Emacs中用Buffer(缓冲区)表示我们平常概念中的窗口,你就当它是一块内存区域。我们用菜单查看现存的Buffer:Esc-`  b 
        看到现有的各个Buffer了吗?你可以用提示你的按键切换到那个Buffer中。(Buffer列表有个快捷键:Ctrl-x  Ctrl-b) 
        Buffer既然可以打开,那么它就能被关闭。当我们嫌开的Buffer太多,或者不再需要某些Buffer时,我们就可以将那个Buffer关掉。 
        调出菜单,依次选择File,Close(current  buffer)。或者你也可以按下列次序按键: 
  ESC-`  f  c 
        我说过,Emacs是一个集成的编辑环境,它可以运行Shell,这就是它的伟大之处,也是世界上顶尖黑客喜爱它的缘故。让我们试试。 
  Alt-x  shell 
        Emacs就会乖乖的打开一个新Buffer,而你的控制台提示符就在你眼前。还不试试前面学的各种命令。不过用完了要记得exit退出(这里也能用Ctrl-D)。 
        至于游戏嘛,我告诉你它在哪儿——tools->game。自己慢慢研究吧,里面可是有五子棋和跳棋的哟。 
        Emacs自带一个很详细的帮助系统,在你需要帮助的时候,按Ctrl-h  t,就可以调出帮助教程(Tutorial)。里面详细介绍了如何使用Emacs,是Emacs的官方手册。只可惜,是英文的,对我们这些英文不佳的人来说困难了点。 
        Emacs就介绍到这里,有关它的更清晰的使用介绍,请参阅IBM  DeveloperWorks/Linux里的教程:《生活在Emacs中》找不到就联系我,我给你一份。 
   
  实验:就用Emacs修改你的/etc/fstab和/etc/lilo.conf文件。 
   
  六、Emacs高级应用 
        前面介绍了Emacs,和一些基本的Unix命令。下面我们将开始接触一种脚本语言Bash(Bourne  Again  Shell)。Bash很像DOS下的批处理语言,但是要比批处理强大许多。掌握了Bash,你就有更多在Unix闯荡的资本;而Bash强大的功能,也足以让你驾驭野性的Linux。本单元学习要求:你至少应了解基本的计算机编程的概念,知道变量、常量、循环、条件判断等编程语言的基本术语。这样不至于我是在对牛弹琴,也不必浪费你的宝贵时间。 
        今天我们就要在Emacs环境中,“足不出户”,进行Bash编程的学习,同时还可以听着美妙的音乐。 
   
        先进行些准备工作———如何安装软件。 
        对于刚接触Linux的人而言,最令他们头疼的,不是一大堆的命令和参数,而是没有自己所熟悉的软件。再好的系统,没有大量的软件作支撑,也生存不下去(IBM的OS/2就是个典型的例子)。但是现在,GNU/Linux可以使用的软件很丰富,你可以上网搜索,就会找到几大专业的Linux软件搜集下载站点,里面的软件储量很丰富的。 
        下载你需要的软件包,按照下面的方法安装软件。 
  1、编译安装源代码包 
        实际上,绝大多数Unix软件都是以源代码形式发布的,这样做的好处就是,用户可以根据自己系统的实际情况对软件进行修改。下面我们来看看如何安装源代码包。 
          目标软件:zhcon-0.2.3.tar.gz              Linux  Console  Chinese  System 
  #mkdir  temp                                                  /*建立一个临时目录*/ 
  #cp  zhcon-0.2.3.tar.gz  temp/                /*将包拷到临时目录中*/ 
  #cd  temp 
  #tar  vxzf  zhcon-0.2.3.tar.gz                /*解压、归档一步到位,这时将生成一个新的目录*/ 
  #cd  zhcon-0.2.3 
  #./configure                                                /*配置编译环境*/ 
  #make                                                              /*开始编译*/ 
  #make  install                                              /*安装*/ 
        至此,zhcon就装好了。最后三步就是安装源代码包的标准操作。执行./configure后安装程序会告诉你程序安装后的所在目录。要卸载该软件,就直接删除该目录即可(别忘了还要删掉/usr/local/bin中的执行命令zhcon)。 
   
  2、用RPM安装.rpm包,.src.rpm包 
        RPM是Redhat  Package  Manager,是RedHat公司做的自动化安装工具。我们用它来装一个MPEG播放器:CandyPlayer 
  #cp  candyplayer-0.1.1-1.i386.rpm  temp/ 
  #cd  temp 
  #rpm  -ivh  candyplayer-0.1.1-1.i386.rpm      /*这里是软件包的全名*/ 
        安装时会显示一个进度条,告诉你安装过程。RPM安装之前会先检测系统的完整性,看是否缺少文件。如果缺少所需的文件,则拒绝安装,屏告知所缺的文件。 
        有时候我们会碰到用RPM打包的源代码.src.rpm,这时就需要我们自己编译。安装这样的包只需要改变RPM命令的参数。 
  #rpm  --rebuilddb  target.src.rpm              /*假设软件包叫target.src.rpm*/ 
        要删除已装的软件,只需下面的命令 
  #rpm  -e  candyplayer                                            /*这里是软件的名字*/ 
        用RPM就这么简单。 
   
  3、安装二进制程序 
        有些软件商不愿公布源代码,因此它们直接将软件做成一个大的安装文件。下面就来装一个这样的东西。 
        MusicMatch  Jukebox想必大家不陌生吧?非常优秀的一款音乐播放软件。它出了一个Linux版本,单个二进制安装文件-install-mmjb-1.43.sh。我们来装它。由于它必须在X下安装,我们就假设已经有了窗口环境。打开一个控制台窗口。 
  #cd  /temp 
  #./install-mmjb-1.43.sh 
        接着就开始安装了,和Windows下安装软件的过程类似。须注意一点,这个软件允许普通用户安装,但是不能向/var目录添加链接,只能装在自己的主目录中。 
   
        以上就是Linux系统安装各种软件的方法。下面进入今天的正题。 
        先从www.mpg123.de下载mpg123-0.59r.tar.gz和playmp3list.tar.gz这两个软件包。启动Emacs,新建Shell缓冲区,su升变成root,安装上述这两个包,还原成普通用户。安装顺序是先装mpg123-0.59r.tar.gz,再装playmp3list.tar.gz。 
        新建一个Bash脚本addmp3 
  C-x  C-f  addmp3        /*C-x就是Ctrl-x,同理M-x就是Alt-x或者ESC-x,下同*/ 
        在新的缓冲区里输入下面的命令 
  #!/bin/bash 
  #  Add  MP3  files  to  my  playlist  file  ~/playlist.m3u 
   
  find  ~/music/  -iname  *.mp3  >>  ~/playlist.m3u 
        存盘 
  C-x  C-s 
        这样,就有了我们的第一个Bash程序——addmp3。它将搜索存放在你主目录下music文件夹里的所由mp3格式的文件,然后生成播放列表playlist.m3u。 
        切回Shell,执行addmp3 
  $chmod  +x  addmp3          /*变成可执行文件*/ 
  $./addmp3            /*运行*/ 
        这样就生成了播放列表。把它放到/usr/local/bin下面,以后你就可以在任何一个目录下运行addmp3了。当你添加了新的mp3文件时,就在那个目录下运行这个程序,它将把新文件追加到播放列表里。 
        接下来我们到另一个控制台下去运行playmp3list。 
  Alt-F2          /*切换至tty2,登录。*/ 
  $playmp3list  playlist.m3u 
        我为什么不在Emacs下运行playmp3list呢?因为playmp3list程序运行时用到了ncourse库,生成了伪图形界面,在Emacs里效果很难看,所以我就不在Emacs里用它了。何况Linux是多用户多任务的操作系统,你可以在不同的控制台下执行不同的程序,就象多开了几个窗口一样。而且各个控制台互不干扰,所以你完全可以在另一个控制台下执行playmp3list,照听音乐不误。 
        用Alt-F1再切回来,继续我们的工作。 
         
        Emacs实在是太复杂了,所以今天我们就先到这里吧,还有一些Emacs使用技巧和有关Bash编程的部分留到【GNU/Linux实战手记之Emacs篇  下】再详细讲解。 
        什么?我没讲Bash编程吗?那addmp3是什么?试着先理解它。 
本帖最近评分记录:
  • 浮云:15(yunyue)
  • 顶端 Posted: 2008-04-25 15:55 | [楼 主]
    ufly



    性别: 帅哥 状态: 该用户目前不在线
    等级: 希望之光
    发贴: 1930
    威望: 0
    浮云: 1366
    在线等级:
    注册时间: 2006-06-19
    最后登陆: 2010-10-14

    5come5帮你背单词 [ beg /beg/ v. 乞讨,乞求,请求,恳求 ]


    这个东西用了很久,确实有很多优点,但是本身太臃肿了,启动都要等上一会,而且现在编程大多用eclipse,还是决定换成vim了
    顶端 Posted: 2008-04-25 22:16 | [1 楼]
    我来我网·5come5 Forum » Linux专区

    Total 0.023595(s) query 6, Time now is:05-08 20:30, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号