提示:这里描述具体问题:
在ubuntu20.04安装了python3.8之后就不能用中英文切换了。
点击manage install language,没有反映。
点击商店中的中英切换图标也没有反映。
查了好久资料才反应过来,没有提示,没有反应,不知道错误在哪里。后来反应过来了,在ubuntu的系统里面所有的过程都会被记录下来,所以就想到去系统log里面找错误,果然在/var/log/syslog里面发现了问题,提示没有_gi模块,这让我想到了之前在修改python版本时遇到的一个问题就是不能打开terminal,详见:http://t.csdn.cn/U4xrC
根据之前的经验找到了问题。
提示:这里填写问题的分析:原因是python在启动之前会先启动shell脚本,在shell脚本中提示时python3,当前的python3指向python3.6,python3.6不能直接应用,所以提示不能找到_gi模块。
解决方案:
提示:这里填写该问题的具体解决方案:和之前一样找到python提示错误的文件,修改为python3.8即可解决。
提示是这句话,打开文件。
File "/usr/bin/gnome-language-selector", line 5, in
sudo vim /usr/bin/gnome-language-selector
将
#! /usr/bin/python3
import gettext
from LanguageSelector.gtk.GtkLanguageSelector import GtkLanguageSelector
from gettext import gettext as _
from optparse import OptionParser
from gi.repository import Gtk, Gio
import sys
is_running = False
def on_activate (app, options):
global is_running
if is_running:
for window in app.get_windows():
if not window.is_active():
window.present()
return
is_running = True
instance = GtkLanguageSelector(datadir=options.datadir,
options=options)
app.add_window(instance.window_main)
if __name__ == "__main__":
gettext.bindtextdomain("language-selector", "/usr/share/locale")
gettext.textdomain("language-selector")
parser = OptionParser()
parser.add_option("-n", "--no-verify-installed-lang-support",
action="store_false", dest="verify_installed",
default=True,
help=_("don't verify installed language support"))
parser.add_option("-d", "--datadir",
default="/usr/share/language-selector/",
help=_("alternative datadir"))
(options, args) = parser.parse_args()
app = Gtk.Application(application_id="com.ubuntu.GnomeLanguageSelector",
flags=Gio.ApplicationFlags.FLAGS_NONE)
app.connect("activate", on_activate, options)
app.run(None)
修改为
#! /usr/bin/python3.8
import gettext
from LanguageSelector.gtk.GtkLanguageSelector import GtkLanguageSelector
from gettext import gettext as _
from optparse import OptionParser
from gi.repository import Gtk, Gio
import sys
is_running = False
def on_activate (app, options):
global is_running
if is_running:
for window in app.get_windows():
if not window.is_active():
window.present()
return
is_running = True
instance = GtkLanguageSelector(datadir=options.datadir,
options=options)
app.add_window(instance.window_main)
if __name__ == "__main__":
gettext.bindtextdomain("language-selector", "/usr/share/locale")
gettext.textdomain("language-selector")
parser = OptionParser()
parser.add_option("-n", "--no-verify-installed-lang-support",
action="store_false", dest="verify_installed",
default=True,
help=_("don't verify installed language support"))
parser.add_option("-d", "--datadir",
default="/usr/share/language-selector/",
help=_("alternative datadir"))
(options, args) = parser.parse_args()
app = Gtk.Application(application_id="com.ubuntu.GnomeLanguageSelector",
flags=Gio.ApplicationFlags.FLAGS_NONE)
app.connect("activate", on_activate, options)
app.run(None)
欢迎评论:
提示:欢迎大家在评论区讨论相关问题。
可以关注博主,我会持续更新工作中遇到的技术小砖头,供大家使用。
也可以在评论区告知好的小砖头或技术,我会收录。
还可以指出本博文错误,希望大家不吝赐教。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)