标签:screen py tmux python3.6 ranger usr line 目录
背景
首先ranger是正常安装,正常环境下也是可以正常使用的。当我在tmux中使用ssh远程,然后使用ssh远程的机器中的ranger,就发现ranger打开报错了。
嵌套层级:
tmux →ssh→ranger
报错信息
# ranger
[13:37:03]
ranger version: ranger 1.9.3
Python version: 3.6.8 (default, Nov 16 2020, 16:55:22) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]
Locale: zh_CN.UTF-8
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/ranger/core/main.py", line 171, in main
fm.initialize()
File "/usr/local/lib/python3.6/site-packages/ranger/core/fm.py", line 132, in initialize
self.ui.initialize()
File "/usr/local/lib/python3.6/site-packages/ranger/gui/ui.py", line 127, in initialize
self.handle_multiplexer()
File "/usr/local/lib/python3.6/site-packages/ranger/gui/ui.py", line 500, in handle_multiplexer
['screen', '-Q', 'title']).strip()
File "/usr/local/lib/python3.6/site-packages/ranger/ext/spawn.py", line 35, in check_output
process = Popen(popenargs, stderr=fd_devnull, **kwargs)
File "/usr/lib64/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib64/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] 没有那个文件或目录: 'screen': 'screen'
ranger crashed. Please report this traceback at:
https://github.com/ranger/ranger/issues
解决过程
我本来并没有打算解决这个问题,既然tmux ssh远程无法使用的话,好我就不在tmux中ssh中使用ranger就是了。
后来发我现,在此环境下的nvim中既然可以正常使用。也就是嵌套的层级更多了,反而可以使用了。
tmux → ssh→neovim→ranger
这样就激起了我的好奇心。看来这个问题是可以解决的。
对比了一下环境变量的不同,后来发现是因$TERM
变量的值不同导致的。
检查$TERM
变量的值
tmux中我的执行结果如下:
# echo $TERM
screen-256color
不在tmux中的值是:
echo $TERM
xterm-256color
这样就发现了两者的区别了。
解决方法
运行ranger之前执行以下语句:
export TERM=xterm-256color
然后在运行ranger就可以正常打开了。
参考文献
https://github.com/ranger/ranger/issues/1805
标签:screen,py,tmux,python3.6,ranger,usr,line,目录 来源: https://blog.csdn.net/lxyoucan/article/details/121590347
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。