重新认识xterm及我的配置详解

其它类软件,非上述版软件
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

重新认识xterm及我的配置详解

#1

帖子 roylez » 2008-08-16 22:10

本来一直用rxvt-unicode好好的,发现xterm的utf8支持也不错,而且xterm下看monaco字体更加舒服些,然后就抱着试试看的心理用用看。现在的感觉是相当不错,估计短时间内不会换了。还有许多功能我还没有仔细挖掘。

先对rxvt-unicode和xterm的功能做个对比,都能行的我就不说了。

代码: 全选

                           rxvt-unicode                     xterm
速度                           快                             更快
背景透明                      支持                           不支持
图片背景                      支持                           不支持
字体渲染                      一般             更好(两者程序实现上不同,我觉得xterm下更漂亮)
Client/Serve模式       支持(urxvtc,urxvtd)                   不支持
脚本扩展                    urxvtperl                          无 
颜色                         88(可以打256补丁)           256
更新: urxvt有个bug,导致字体显示有问题,具体看
http://lists.schmorp.de/pipermail/rxvt- ... 00514.html

我的xterm配置如下。

外观:重要点的就xterm-256color那行。

代码: 全选

!look and feel
xterm.termName: xterm-256color
xterm.geometry: 80x36
xterm*scrollBar: false
xterm*rightScrollBar: true
xterm*loginshell: true
xterm*cursorBlink: true
xterm*background:  black
xterm*foreground:  gray
xterm.borderLess: true
xterm.cursorBlink: true
xterm*colorUL: yellow
xterm*colorBD: white
修正Alt不能正常使用的问题。

代码: 全选

!fix alt key input 
xterm*eightBitInput: false
xterm*altSendsEscape: true
拷贝屏幕内容,包含所有颜色控制符。可以用来做ASCIIART,也可以用脚本转成html放到网上,就好像鸟哥的主页里面的代码段一样。附件里面的perl脚本可以把拷屏输出转成html。

代码: 全选

!print color and bold/underline attributes
xterm*printAttributes: 2
xterm*printerCommand: cat > ~/xtermdump
快捷键定义:鼠标选择自动复制,ctrl-v粘贴,ctrl-p拷屏。

代码: 全选

!mouse selecting to copy, ctrl-v to paste
!Ctrl p to print screen content to file
XTerm*VT100.Translations: #override \
    Ctrl <KeyPress> V: insert-selection(CLIPBOARD,PRIMARY,CUT_BUFFER0) \n\
    <BtnUp>: select-end(CLIPBOARD,PRIMARY,CUT_BUFFER0) \n\
    Ctrl <KeyPress> P: print() \n
字体相关

代码: 全选

!font and locale
xterm*locale: true
xterm.utf8:     true
xterm*utf8Title: true
xterm*fontMenu*fontdefault*Label: Default
xterm*faceName: Monaco:antialias=True:pixelsize=15
!xterm*faceName: monofur:antialias=True:pixelsize=20
!xter*boldFont: DejaVu Sans Mono:style=Bold:pixelsize=15
xterm*faceNameDoublesize: wenquanyi bitmap song:pixelsize=16:antialias=True
xterm*xftAntialias: true
xterm*cjkWidth:false            !<-----谢谢xeoc指正 
Tango配色方案

代码: 全选

!-- Tango color scheme
*xterm*color0: #2e3436
*xterm*color1: #cc0000
*xterm*color2: #4e9a06
*xterm*color3: #c4a000
*xterm*color4: #3465a4
*xterm*color5: #75507b
*xterm*color6: #0b939b
*xterm*color7: #d3d7cf
*xterm*color8: #555753
*xterm*color9: #ef2929
*xterm*color10: #8ae234
*xterm*color11: #fce94f
*xterm*color12: #729fcf
*xterm*color13: #ad7fa8
*xterm*color14: #00f5e9
*xterm*color15: #eeeeec
附上我的xterm和urxvt对比图。同样的字体,同样的窗口大小,同样的配色。

P.S.: 在此向在IRC中被我偷拍的无辜路人致以诚挚的谢意!
附件
xterm截图
xterm截图
rxvt-unicode截图
rxvt-unicode截图
ctlsqs2html.tar.gz
拷屏输出转html的perl脚本
(5.18 KiB) 已下载 613 次
上次由 roylez 在 2008-12-26 7:09,总共编辑 4 次。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#2

帖子 eexpress » 2008-08-16 22:22

把拖放文件搞定,才是重要的。没perl扩展,估计没希望了?
● 鸣学
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12

#3

帖子 solcomo » 2008-08-16 22:24

支持 :D
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

#4

帖子 roylez » 2008-08-16 22:28

eexpress 写了:把拖放文件搞定,才是重要的。没perl扩展,估计没希望了?
都不懂你说的托放文件啥意思。我又不懂perl。。

修正:

如果EE说的是托放文件到命令行,其实好简单的……

rox会把你选择的文件的完整地址都放到PRIMARY里面去,所以在xterm里面用shift+insert就出来了。你觉得麻烦,可以绑个别的什么键。

别的文件管理器不清楚,应该都一样。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#5

帖子 eexpress » 2008-08-16 22:54

让xterm接受从 fm 里面拖出来的文件名啊。通常,输入其他路径的中文名,带特殊字符的(多算是那些电影,带一堆符号),是非常麻烦的事情。

其实, rxvt也不支持,只是有希望在perl扩展方面找。

不支持拖放的,只能当2n。
● 鸣学
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

#6

帖子 roylez » 2008-08-16 23:06

ee说脏话也没必要那么隐晦阿,崽崽学不来的。

刚刚试了,选了一堆乱七八糟的片子,弄上去果然没有自动添加转义符号\。rxvt-unicode可以用先调用脚本预处理PRIMARY里面的东西,xterm还没想出来有什么办法。
头像
HuntXu
帖子: 5776
注册时间: 2007-09-29 3:09

#7

帖子 HuntXu » 2008-08-16 23:10

不支持扩展哦... :oops:
HUNT Unfortunately No Talent...
nanshusu
帖子: 19
注册时间: 2007-11-16 21:11

Re: 重新认识xterm及我的配置详解

#8

帖子 nanshusu » 2008-10-04 11:02

我把上面的配置保存到~/.Xresources中,然后在~/.xinitrc中加入xrdb ~/.Xresources
这样每次启动是xterm字体颜色相关的都生效了,但是鼠标选中拷贝、Ctrl+V粘贴这些没有生效。

每次我都是先在xterm中执行xrdb ~/.Xresources,然后在xterm &,这样新启动的xterm才有复制粘贴功能
请问下这个是怎么回事呢?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 重新认识xterm及我的配置详解

#9

帖子 eexpress » 2008-11-26 13:00

代码: 全选

2008-11-26 12:42:33 三 ~/应用/脚本  ☎ cat xterm2html.bash 
#!/bin/bash

cat|sed 's/\xef\xbf\xbf//g' > ~/xterm-screenshot.hardcopy
if [ -x ~/应用/脚本/ctlseqs2html.pl ]; then
        ctlseqs2html.pl -width 100 ~/xterm-screenshot.hardcopy > ~/xterm-screenshot.html
        rm ~/xterm-screenshot.hardcopy
fi

2008-11-26 12:45:22 三 ~/应用/脚本  ☎ grep printerCommand /home/exp/.Xdefaults 
xterm*printerCommand: xterm2html.bash
!xterm*printerCommand: cat > ~/xtermdump

没事作搞的。下面的也可以改。

代码: 全选

2008-11-26 12:47:06 三 ~/应用/脚本  ☎ grep -C 4 xef ctlseqs2html.pl 

sub txt2html($) {
    $_ = $_[0];
    s/&/&/g;
    s/\xef\xbf\xbf//g;
    s//>/g;
    s/ /&nbsp;/g;
    # s/"/"/g;
附件
2008-11-26-130341_1280x800_scrot.png
● 鸣学
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

Re: 重新认识xterm及我的配置详解

#10

帖子 roylez » 2008-11-26 14:10

ee的terminal,还是一如既往的丑阿。刚刚乱整了下我的ls。
图片
弄个dropbox空间来备份文件或者做私人代码服务器
配置:[url]git://github.com/roylez/dotfiles.git[/url]
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 重新认识xterm及我的配置详解

#11

帖子 eexpress » 2008-11-26 14:30

屁。没一个中文的,不如我的园体。
viewtopic.php?f=12&t=170443
把这个搞定。
● 鸣学
xeoc
帖子: 1994
注册时间: 2007-05-06 10:12

Re: 重新认识xterm及我的配置详解

#12

帖子 xeoc » 2008-12-07 5:28

放弃xterm了,主要原因是unicode的支持不好,起码我这里显示不出℃
xeoc
帖子: 1994
注册时间: 2007-05-06 10:12

Re: 重新认识xterm及我的配置详解

#13

帖子 xeoc » 2008-12-25 23:21

xeoc 写了:放弃xterm了,主要原因是unicode的支持不好,起码我这里显示不出℃
奇怪的是如果xterm不配置按默认来就一切OK....

看来对虚拟终端不能要求太多,urxvt不能显示℡等等宽符,又用回来了,实在是受不了urxvt那么宽的字体

PS:楼主的xterm.都没有起作用其实,xterm*的才起作用,不知道为什么,手动试出来的,而且如果cjkwidth起效果,中文字反而会出错误(至少最小化再回来会显示错误)...改天一行一行看透man.....
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

Re: 重新认识xterm及我的配置详解

#14

帖子 roylez » 2008-12-26 7:07

xeoc 写了:
xeoc 写了:放弃xterm了,主要原因是unicode的支持不好,起码我这里显示不出℃
奇怪的是如果xterm不配置按默认来就一切OK....

看来对虚拟终端不能要求太多,urxvt不能显示℡等等宽符,又用回来了,实在是受不了urxvt那么宽的字体

PS:楼主的xterm.都没有起作用其实,xterm*的才起作用,不知道为什么,手动试出来的,而且如果cjkwidth起效果,中文字反而会出错误(至少最小化再回来会显示错误)...改天一行一行看透man.....
cjkWidth其实是VT100下面的一个类,所以说全名应该是xterm.VT100.cjkWidth,用*可以匹配,用 . 是错的!默认值是false,可见网上那些写xterm.cjkWidth: true的,全都啥也没改。

我也没有找到让那些符号显示正确的方法。
弄个dropbox空间来备份文件或者做私人代码服务器
配置:[url]git://github.com/roylez/dotfiles.git[/url]
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info
yunhai
帖子: 87
注册时间: 2008-12-12 16:13

Re: 重新认识xterm及我的配置详解

#15

帖子 yunhai » 2008-12-26 18:46

我这里xterm可以显示℃,但是urxvt却不行。

看了xterm的中文效果之后,觉得urxvt显示中文实在太宽了,也有点想转xterm了。

有两个问题比较烦火:
一个是xeoc提到的,最小化回来中文就乱了。

还有一个是英文字挤在一起了。用dejavu sans mono的话,中文就成方块。用vera sans yuanti mono, wenquanyi zen hei, dejavu sans yuanti mono都是中文好好的,英文只能看到半个。
上次由 yunhai 在 2008-12-26 18:51,总共编辑 1 次。
回复