使用gedit时中文乱码、打印警告

中文乱码:

转自http://www.huomo.cn/os/article-b5ab.html

gedit中打开含中文的文本文件时,总是容易出现中文乱码问题,尤其是在windows下创建的文本文件。这是因为编码方式不同造成的,windows下有些txt文件的编码方式是GBKGB18030或者GB2313解决如下:
   
方法1. 通过GConf的配置编辑器
在控制台下运行 gconf-editor, 打开GConf的配置编辑器,在/apps/gedit-2/preferences/encodings分支的auto_detected中添加 GBKGB18030GB2313 三个编码,并列为最上。

当然,你得安装了这个东西。如“yum install gconf-editor

纠结的是当我输入“gconf-editor”后啥都没出现。即使是在root权限下。

幸运的输入“sudo gconf-editor”看到了编辑器配置的真容。调整后终于看到了可爱的中文。

至于为什么要sudo,我想因为我以“su”方式,而非“su -”方式进入root吧。且悲催的我root环境设置问题(实际最好不要改root环境)。只能再次“sudo”了。

不知道是哪位大仙说了一句。gedit问题大体是:

root用户下大多是用户环境设置引起。

普通用户下大多是权限问题引起。

如共享目录下,普通权限不能进行任何操作,root权限下能读但不能保存。

其他目录下,普通用户下,gedit使用正常,能读写。Root用户下,能保存。

此外,root用户中默认支持使用vi编辑器,当用gedit时会出现一些问题。以“su”进入root环境,gedit filename会先出现打印很多警告。“sudo gedit 文件,则不会打印警告“。而以“su  -“方式进入root时,则只刚开始有打印一些语句。

所以,root环境中要用gedit编辑器,最好用“sudo gedit filename“方式。

 

方法2. 编辑配置文件

打开目录#cd ~/.gconf/apps/gedit-2/preferences/encodings,(原来这就可以打开隐藏文件了)
手工编辑 ~/.gconf/apps/gedit-2/preferences/encodings 目录下的 %gconf.xml 文件,在
节中加入,并放在本节开始


  • GB18030


  • GB2312


  • GBK

  • ps:个人的几点陋识,(这位仁兄体会很深啊)
    一开始认为这种问题在gedit的菜单项中修改一下就可以解决,结果在gedit的菜单中找不到相关设置项。而gconf-editor 也没有安装,网上提到的gconf-editor 的方法也无法使用,最后想改配置文件,但发现根本不知道配置文件在何处,以及该修改哪段配置。看来linux还有很多路要走呀。 1. 软件相关的配置不能由软件自身来提供。既然gedit提供了UI界面,那他也应该提供相应功能设置的UI界面,而不是让一个用户去找什么配置文件和学习配置文件的编写,毕竟用户是使用这个软件来做其他事情而不是来编辑他的配置文件的。 2. 既然对windows的注册表文件有那么大的批评为什么又来抄袭了这个功能,而且向添加编码这种编辑工具常用的功能也要通过这种功能才能实现,是不是有点舍近求远了,更别说初学者在这种地方能做的无心破坏了。 3. linux下的配置文件永远是个迷宫,从配置文件的位置到配置文件里面的格式和内容。

     

    编辑器设置:

    转自:http://blog.csdn.net/humorrat/article/details/5691351

    1. gedit的插个位置位于 /usr/lib/gedit-2/plugins

        第三方插件和自定义的插件都将被拷贝到该目录。

    2. 安装gedit的标准插件 sudo apt-get install gedit-plugins

    3.gedit的基本配置

    简单的讲:用gedit打开文件后,编辑--à首选项--à,设置比如字体大小、颜色,突出本行、显示行号、Tab字符数等。但我没看到加亮语法项。

      a.edit -> preferences

      b. View : Enable text wrapping

                     Do not split words over two lines

                     Display line numbers (显示行号) 这个很有用

                     highlight current line 高亮显示当前行

                     Right margin at column:xx 在第xx列显示一条基准线

                     Highlight matching bracket 高亮显示框架(如花括号,括号等等)

       c.Editor: Tab width   tab符号在编辑器中的宽度

                     Insert spaces instead of tabs 当输入tab时,替换为空格

                     Enable automatic indentation 开启自动识别

                     Create a backup copy of files before saving 存盘前备份

                     Autosave files every xx minutes 每隔xx分钟,自动存盘

       d.Font & Colors 字体和颜色。默认字体大小为10,个人觉得有点大,我设置为9,比较合适。   要设置字体,需要去掉Use the system fixed width font前面的勾

    4. 插件设置 (重头戏!没有插件,gedit不会如此强大)

        a.我安装的插件 C-style Indentation 这个可以用来识别C的一些代码块。

        将插件文件拷贝到插件目录,重启gedit

        b. edit -> preferences -> Plugins

        我启用了如下几个插件

        C-style Indentation

        Document Statistics   文档统计。可以在Tools -> Document Statistics 中查看该文档的一些统计信息。

        Embedded Terminal   gedit中嵌入一个终端,可以用来进行一些编译调试工作,很方便。通过View->bottom Pane 或者 Ctrl+F9可以打开。

        File Browser Pane 文件浏览器这个也很方便。通过 View -> side Pane 可以打开。

        Quick Open 可以用于快速打开文件(历史文件) File -> Quickly Open中可以看到。

        Snippets 可以整块的插入代码块,选中后,可以在Configure Plugin中编辑可插入的代码块,支持多种语言。

                      在输入时,输入块头,然后连按两下tab键,可自动生成代码块。如 for  。。。。

        Word Completion 自动拼写。输入代码的前部分,如果代码中已输入过,会自动提示后面。

        Insert Date/Time 插入时间日期

        d.我关闭的插件

           Spell Checker 拼写检查,感觉没什么用。

    如此设置geditLINUX中进行C语言的编写就比较好用了

    加亮语法设置:

    转自:http://linux.chinaitlab.com/soft/873526.html

    #gedit /etc/vimrc文件中。实际文件让人头痛的多,关键如下。

    #设置行号:

        set nu

        #设置tab的长度为4

        set tab=4

        #打开状态栏标尺

        set ruler

        #突出当前行

        set cursorline

        #自动语法高亮

        syntax on

        保存退出后即可生效

     

    Root及普通用户环境

    env”命令查看当前环境。

    根据Shell不同
    /etc/profile 影响的是 KBBASH
    /etc/.login
    影响的是C
    /etc/skel/
    下面应该是文件模板,用户第一次登陆时将相应的模板copy到自己的目录下,并直接受其影响

     

    TCSH shell3个初始化文件: .login .tcshrc .logout,

    .login
    文件是每次注册时执行的注册初始化文件,
    .tcshrc
    文件是每次进入TCSH shell时执行的shell初始化文件, 该文件在注册时执行或者用tcsh命令直接从另一个shell进入TCSH shell时执行,
    每次注消时执行.logout文件

    1 .login
    TCSH shell
    有自己注册初始化login,该文件用于配置用户shellshell命令和特殊变量定义, .login文件相当于BASHZSH shell中使用的.profile文件。
    .login文件包含setenv命令,TERM之类的特殊环境变量赋值,可以用任何标准的编辑器编辑它,改变这些值,也可添加新的值.但是要记住:TCSH shell,为环境变量赋值的命令是setenv,:
    %setenv EXINIT 'set nu ai'
    定义EXINIT变量并设置vi编辑器行计数和自动缩排的功能.
    当编辑.login文件时要十分小心,不经意的编辑可能造成错误的变量设置或者根本没有设置变量,因此,编辑之前最好备份.login文件.如果更改了.login文件,想让这些变化在当前注册期间生效,需要使用source命令重新执行该文件,source命令实际上可执行任何初始化文件,其中包括.tcshrc文件和.logout文件,:
    %source .login
    2
    .tcshrc
    每当进入TCSH shell或产生任何子shell,就执行.tcshrc初始化文件,如果TCSH shell是用户注册的shell,那么当用户注册时, .tcshrc文件和.login文件一起运行,如果从另外一个shell进入TCSH shell, .tcshrc文件被自动执行,文件中包含的变量和别名被定义.
    实际上,每当产生一个shell,如运行shell脚本,就执行.tcshrc文件,也就是说,每当创建一个shell,就执行.tcshrc文件,这允许在.tcshrc中定义局部变量,在某种意义上说,局部变量可以进入任何子shell,即时像history这样的用户定义的变量也是局部变量,但要为每个产生的子shell定义特殊变量,这样,为每个子shell变量设置history,但是,每个子shell都有自己的局部history变量,用户甚至可在不影响其他子shell的变量的情况下改变一个子shell的局部history变量,shell初始化文件中定义特殊变量可以看做是BASH shell导出变量,BASH shellZSH shell中的导出变量只把自己的拷贝传送给子shell,改变拷贝不会影响原始定义.
    .tchsrc
    文件也可包含别名变量和用于打开shell特征的特征变量,别名变量和特征变量是局部变量,限定于shell内部.但是.tcshrc文件在每个shell中都将定义这些变量.因此, .tcshrc文件通常保存各种命令定义的别名,:
    .tcshrc
    #
    set shell=/usr/bin/csh
    set path=$PATH (/bin /usr/bin .)
    set cdpath=(/home/dirname/filename /home/dirname/files)
    set prompt="!$pwd>"
    set history=20
    set ignoreeof
    set noclobber
    alias rm 'rm -i'
    alias mv 'mv -i'
    alias cp 'cp -i'
    与环境变量不同,局部变量用set命令定义,.tcshrc文件中的局部变量应该使用set命令定义,setenv命令定义的环境变量是放在.login文件中的,请记住:当改变pathcdpath的路径名时,数组中包含这些路径名,数组中的每个元素要用空格分开,如果添加新的路径名时,必须保证用空格把它和其他的路径名分开.如果已经改变了.tcshrc文件,希望这些变化在当前注册中立即生效,别忘了用source命令重复执行.tcshrc文件。
    3 .logout
    .logout
    文件也是初始化文件,只不过它在注消时执行,用户可以设置.logout文件以使其完成任何在注消时想要完成的操作,文件中没有定义变量,常包括关闭进程的shell命令.可以向.logout文件中添加自己的shell命令,:
    .logout

    你可能感兴趣的:(linux,shell,statistics,windows,bash,insert,colors)