12.10

12.10

刚刚从 10.04 升级到 10.10,键盘指示器小程序不再显示活动布局的两个字母的国家代码。

这是糟糕的。这是默认行为吗?使用两种布局的人都无法分辨他们使用的是哪种语言。

我似乎找不到这个设置,它曾经位于键盘布局的首选项中。

更新 1:如果这还不明显的话,我有两种键盘布局 - 英语和希伯来语。我刚刚升级了 10.04 版,其中国家代码 (USA/IL) 显示在旗帜上。

现在我得到的只是一个模糊的键盘图标,并且找不到它的设置。

更新 2:这似乎是一个自 Lucid 以来人们一直在报告的错误,现在又回到了 Maverick

答案1

10.10

是的,图标没有反映所选语言。我认为这可能与显示“旗帜”通常不合适有关。(例如:在印度显示英国国旗,在奥地利显示德国国旗,在塞内加尔显示法国国旗)。

当前的隐喻,即 KEYBOARD → Langauge 非常符合用户体验指南。

您所描述的行为很久以前就被删除了。当时是另一个处理键盘布局的应用程序(不记得名字了)。(至少我记得类似的东西,现在想起来我不太确定)

我获取上述屏幕截图的方法是进入键盘布局,选择添加希伯来语/以色列并将其添加到列表中。我的系统自 9.10 以来一直升级,因此几乎每个 Ubuntu 安装都应该相同。


替代文本

旧的行为仍然潜伏在系统中。如果您希望指示器显示旗帜,您可以打开gconf-editor,转到/desktop/peripherals/keyboard/indicator并启用“showFlags”。但是,您需要相关旗帜/home/<username>/.icons/flags(按CTRL+H显示以句点开头的目录)。以色列的旗帜应该被命名il.png(即以色列ISO 3166-1 alpha-2 国家代码)。

答案2

12.10

默认情况下,12.10 中的键盘指示器显示键盘图标和布局的 2 个字母的缩写。

如果你想展示国旗,你必须做两件事

  1. 设置配置选项dconf

    dconf 写入 /org/gnome/libgnomekbd/indicator/show-flags true

  2. ~/.icons在(不是)文件夹中安装旗帜图标~/.icons/flags。一个简单的方法是通过以下方式安装famfamfam-flag-png并将图标链接到您的文件夹:

    ln -s /usr/share/flags/countries/16x11/*.png ~/.icons/

答案3

Ubuntu 12.04

当您定义了多个键盘布局时,会出现键盘指示器。

截屏

国家/地区使用 2 个字母的代码显示

例如——法国:

截屏

如何

在 Dash 中搜索键盘布局

笔记

与 10.10 不同 - 虽然有一个用于键盘的 gconf 条目,但没有类似的 show-flags 键。


如果您希望显示国旗而不是键盘指示器,您可以使用一个名为的小程序gxneur

截屏

格克斯纽尔

为此,我们需要将 列入白名单gxneur。使用dconf-editor

dconf-工具

截屏

  • 添加格克斯纽尔如图所示。
  • 注销并登录。
  • 开始神经科学研究所来自 Dash。
  • 这将显示小程序。
  • 右键单击显示的小程序,选择键盘属性并选择特性选项卡。确保Auto Startup复选框被勾选。
  • 接下来,您需要禁用标准键盘指示器。按照此问答中的说明进行操作即可实现

答案4

我在这里找到了一个 python scrypt:ubuntu 应用程序开发人员:应用程序指标做一个指示器应用程序,我稍微调整了一下,做了一个小的 Lang 标志指示器。

在此处输入图片描述

国家指标.py

#!/usr/bin/env python
# Copyright 2009 Canonical Ltd.
#
# Authors: Neil Jagdish Patel <[email protected]>
#          Jono Bacon <[email protected]>
#
# This program is free software: you can redistribute it and/or modify it 
# under the terms of either or both of the following licenses:
#
# 1) the GNU Lesser General Public License version 3, as published by the 
# Free Software Foundation; and/or
# 2) the GNU Lesser General Public License version 2.1, as published by 
# the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but 
# WITHOUT ANY WARRANTY; without even the implied warranties of 
# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR 
# PURPOSE.  See the applicable version of the GNU Lesser General Public 
# License for more details.
#
# You should have received a copy of both the GNU Lesser General Public 
# License version 3 and version 2.1 along with this program.  If not, see 
# <http://www.gnu.org/licenses/>
#
import gtk
import appindicator
import getpass
import locale

lang = locale.getdefaultlocale()
user = getpass.getuser()

png = '/home/' + user + '/.icons/flags/' + lang[0] + '.png'

def menuitem_response(w):
  gtk.main_quit()

if __name__ == "__main__":
  ind = appindicator.Indicator ("lang-flag-indicator", png, appindicator.CATEGORY_APPLICATION_STATUS)
  ind.set_status (appindicator.STATUS_ACTIVE)

  print "your current language is: %s, so it load the ~/.icons/flags/%s.png" % (lang[0], lang[0])

  # create a menu
  menu = gtk.Menu()
  mnuQuit = gtk.MenuItem("Exit")
  menu.append(mnuQuit)
  mnuQuit.connect("activate", menuitem_response)
  mnuQuit.show()

  ind.set_menu(menu)

  gtk.main()

它可以轻松作为 Python scrypt 运行,或使用 pyinstaller 进行编译

希望这可以帮助

相关内容