AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 67
Accepted
David Siegel
David Siegel
Asked: 2010-07-29 11:53:51 +0800 CST2010-07-29 11:53:51 +0800 CST 2010-07-29 11:53:51 +0800 CST

如何在 Vim 中启用全彩支持?

  • 772

我有一个可爱的 Vim 配色方案 ( xoria256 ),它在 GVim 中看起来很棒,但是当我vim在终端中使用正常时,仅部分支持配色方案 - 例如,使用默认的半透明茄子背景颜色。如何让终端忠实地呈现我的 Vim 配色方案?

vim command-line colors
  • 5 5 个回答
  • 110628 Views

5 个回答

  • Voted
  1. Best Answer
    Marius Gedminas
    2010-07-29T12:55:23+08:002010-07-29T12:55:23+08:00

    GNOME 终端支持 256 色,但不宣传它的支持。您可以通过输入以下内容来覆盖 vim 的自动检测:

    if $COLORTERM == 'gnome-terminal'
      set t_Co=256
    endif
    

    在你的 ~/.vimrc 中。

    注意:如果您使用 GNU screen,它会很乐意吃掉那些 256 色代码并将它们转换为基本的 16 色。更好的解决方法是在启动 screen/vim 之前将 TERM 更改为 xterm-256color。

    2017 年更新:如果您有足够新的 Vim(7.4.1799 或更新版本)和足够先进的终端仿真器(xterm,或基于足够新版本的 VTE 的 gnome-terminal),您可以:set termguicolors和终端 vim 将使用完整由 vim 主题定义的 24 位颜色,使用highlight guifg=#rrggbb guibg=#rrggbb.

    • 80
  2. Dave Jennings
    2010-08-05T05:10:27+08:002010-08-05T05:10:27+08:00

    更通用的解决方案是安装术语类型“xterm-256color”。在 10.04 中,我认为它是默认安装的。以前您需要安装“ncurses-term”才能获得它。

    然后在 .bashrc 中设置术语类型,如下所示:

    if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
        export TERM=xterm-256color
    fi
    

    如果您希望某些程序仅具有 256 色功能(可能会使其他程序感到困惑),请改用:

    TERM=xterm-256color myprogram
    

    并可能将其设置为程序的别名。

    然后检查您的终端颜色功能:

    $ tput colors
    256
    

    您可能仍然需要上面的 vim 设置才能让 vim 识别它。大多数应用程序会自动识别 256 种颜色(如果它们可以使用的话)。

    Emacs 还具有更好的颜色主题,有 256 种颜色。要检查它是否支持 256 色运行:

    M-x list-colors-display
    

    256colors.pl是 Perl 脚本,它将显示终端中的所有颜色。

    • 45
  3. crncosta
    2010-11-26T08:21:28+08:002010-11-26T08:21:28+08:00

    只需将下面的行包含到您的$HOME/.bashrc(最好在文件的最后一行)中:

    export TERM="xterm-256color"
    

    并保存它。之后,重新启动您的 gnome 终端。此更改不仅适用于 vim,而且适用于您的所有终端应用程序。

    要检查它是否有效,请运行这个小脚本:

    #!/usr/bin/env python
    # Copyright (C) 2006 by Johannes Zellner, <[email protected]>
    # modified by [email protected] to fit my output needs
    # modified by [email protected] to fit my output needs
    
    import sys
    import os
    
    def echo(msg):
        os.system('echo -n "' + str(msg) + '"')
    
    def out(n):
        os.system("tput setab " + str(n) + "; echo -n " + ("\"% 4d\"" % n))
        os.system("tput setab 0")
    
    # normal colors 1 - 16
    os.system("tput setaf 16")
    for n in range(8):
        out(n)
    echo("\n")
    for n in range(8, 16):
        out(n)
    
    echo("\n")
    echo("\n")
    
    y=16
    while y < 231:
        for z in range(0,6):
            out(y)
            y += 1
    
        echo("\n")
    
    
    echo("\n")
    
    for n in range(232, 256):
        out(n)
        if n == 237 or n == 243 or n == 249:
            echo("\n")
    
    echo("\n")
    os.system("tput setaf 7")
    os.system("tput setab 0")
    

    此后,您将看到如下内容(取决于您的 gnome-terminal 主题):

    终端

    • 36
  4. wassimans
    2010-11-26T07:18:53+08:002010-11-26T07:18:53+08:00

    好吧,你总是可以配置 Gvim 让它看起来像 Vim。你只需要创建一个 ~/.gvimrc 文件并在其中粘贴这些自定义技巧:

    set guioptions-=r  " no scrollbar on the right
    set guioptions-=l  " no scrollbar on the left
    set guioptions-=m  " no menu
    set guioptions-=T  " no toolbar
    

    我认为这不能解决您的问题,但谁知道 ;-)

    • 1
  5. DLH
    2010-07-29T12:17:06+08:002010-07-29T12:17:06+08:00

    我为 Vim 制作了一个单独的配置文件,它在背景中使用了纯色、不透明的颜色。我只是在使用 Vim 时手动切换到它。不确定是否有更好的方法。我愿意这样想。

    • 0

相关问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve