LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: conwood

fvwm: 从入门到提高

[复制链接]
 楼主| 发表于 2009-2-4 17:13:57 | 显示全部楼层
--------------------------------
回复 支持 反对

使用道具 举报

发表于 2009-2-6 08:42:07 | 显示全部楼层
多谢,解决了困扰我多时的问题,总算在GBK下可以不怕FVWM崩溃了。

提交补丁给fvwm吧。

Post by conwood;1943840
真是感慨啊,距离1楼发贴已经过了3年多,第100楼让我自己坐上了。

最近刚发现一个困扰已久的问题解决了:

访问这个页面
http://blog.amit-agarwal.co.in/2 ... l-icons-and-themes/
然后用alt-tab切换的时候,会导致fvwm crash

我的locale是gbk,windowlist使用的字体是:

MenuStyle "WindowList" Font  "StringEncoding=gbk-0:xftroid Sans Fallback:size=12:shadow=1:encoding=iso10646-1"

解决办法是:
修改fvwm的源码,在libs/Ficonv.c的convert_charsets函数里
在Ficonv_open之前,把out_charset和in_charset后面加上//TRANSLIT

    char my_out_charset[256];
    char my_in_charset[256];
    sprintf(my_out_charset, "%s//TRANSLIT", out_charset);
    sprintf(my_in_charset, "%s//TRANSLIT", in_charset);
    cd = Ficonv_open(my_out_charset, my_in_charset);

原理就是:
fvwm调用iconv的时候,如果iconv出错,则有一个数组会是NULL,试图调用数组的时候,就会segfault
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-18 11:06:36 | 显示全部楼层
FVWM 多国文字渲染补丁

转载自此:

http://linuxtoy.org/archives/fvwm-mix-display-patch.html

[撰文/kemean]

FVWM 虽支持 Xft2 & Fontconfig,却无法支持对多语文字采用多种字体来渲染,单一字体渲染往往不尽人意,不是中文乱码就是英文非常难看。因此,我写了这个补丁,实现了类似 Pango 的国际化文本渲染功能。

FVWM

打上这个补丁之后,FVWM 便跟其它 GTK 程序一样,只需设置为 Sans 即可,它会根据具体的文字来匹配合适的字体,完全遵循 Fontconfig,渲染效果非常好。

你可以从 Ubuntu 中文论坛下载此补丁。
回复 支持 反对

使用道具 举报

发表于 2009-2-28 10:22:28 | 显示全部楼层
真的是怀念呀~~~

想当年到现在能坚持用FVWM下来的也没有几个了^_!!
回复 支持 反对

使用道具 举报

发表于 2009-4-19 12:05:42 | 显示全部楼层
这份贴,我学到很多,也看到很多高手在这里,看来这里才是学习fvwm中文的好地方,
回复 支持 反对

使用道具 举报

发表于 2009-5-13 19:31:23 | 显示全部楼层
很好很好!精华文章!
回复 支持 反对

使用道具 举报

发表于 2009-5-18 13:09:19 | 显示全部楼层
以前看到一个很Cool的菜单,可以浏览并设置墙纸,唯一的缺点就是不能保存设置。前两天研究了一下,作了点改动,把设置的结果保存到.wallpaper里就解决了
  1. #载入墙纸的配置文件.wallpaper
  2. Read        $[FVWM_USERDIR]/.wallpaper
  3. #生成菜单的函数
  4. DestroyFunc        WallpaperBrowser
  5. AddToFunc        WallpaperBrowser
  6. +        I        PipeRead 'test ! -d "$0/.thumbs" && mkdir "$0/.thumbs"; \
  7.                 for i in "$0/"*; do \
  8.                     test -f "$0/.thumbs/${i##*/}" \
  9.                         -a "${i}" -ot "$0/.thumbs/${i##*/}" || { \
  10.                             convert -quality 0 -scale 64 "${i}" "png:$0/.thumbs/${i##*/}" 2>/dev/null \
  11.                                 || continue; \
  12.                         }; \
  13.                 done; \
  14.                 fvwm-menu-directory --icon-file __PIXMAP__ -t '%d' --dir $0 --exec-t="^rox " \
  15.                 --command-file "SetWallpaper \"%f\"" | sed -e "s#FuncFvwmMenuDirectory#WallpaperBrowser#g" \
  16.                 -e "s#__PIXMAP__\\(.*\\)\"\\(.*/\\)\\(.*\\)\"#\\2.thumbs/\\3\\1\\2\\3#g"'
  17. #设置和保存墙纸的函数
  18. DestroyFunc        SetWallpaper
  19. AddToFunc        SetWallpaper
  20. +        I        Exec exec fvwm-root -r $0
  21. +        I        Exec exec echo "SetEnv FVWM_WALLPAPER $0" > "$FVWM_USERDIR/.wallpaper"
  22. #把设置墙纸的子菜单放入菜单FvwmMenu中
  23. DestroyMenu        FvwmMenu
  24. AddToMenu        FvwmMenu
  25. +        MissingSubmenuFunction WallpaperBrowser
  26. +        "%16x16/graphics.png%Wallpapers"        Popup                $[FVWM_USERDIR]/wallpaper
  27. #在初始化函数中加入设置墙纸的命令(加到StartFunction中也可以)
  28. DestroyFunc        InitFunction
  29. AddToFunc        InitFunction
  30. +        I        Exec fvwm-root -r $FVWM_WALLPAPER
复制代码
回复 支持 反对

使用道具 举报

发表于 2009-6-11 22:42:25 | 显示全部楼层
都水浒传了呢,108楼(匠)!
上我的FVWM 图
http://www.xinkexue.com/space-417-do-blog-id-465.html
回复 支持 反对

使用道具 举报

发表于 2009-9-19 23:16:01 | 显示全部楼层
如果我想将缩略图自动隐藏,有没有高人可以指点一下??
回复 支持 反对

使用道具 举报

发表于 2009-9-19 23:16:52 | 显示全部楼层
如果我想将缩略图自动隐藏(Thumbnail),有没有高人可以指点一下??
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表