[Share Experiences] linux blender中文输入 暂时解决方法
Tofloor
poster avatar
qq4945286
deepin
2023-08-31 19:53
Author

因为自己不懂代码,在这里要感谢论坛的@hotime详细解答

自己又根据豆包生成的脚本和原来的结合修改了一下。下面是视频演示

https://www.bilibili.com/video/BV1pz4y1K7KT/?vd_source=73aa510057de513a8d1a99b9b27b9a81#reply575463408

下面是代码脚本代码

#!/bin/bash

while true

 do

read -p "请输入您要复制的内容:" text

echo "您输入的内容为:" $text

echo $text | xsel -b

 done

下面是桌面图标代码

[Desktop Entry]

Encoding=UTF-8

Name=1

Exec=bash /home/deepin/apps/blenderzi/1.sh

Icon=/home/deepin/apps/blenderzi/zi.svg

Info="Spark"

Terminal=true 

Type=Application

StartupNotify=true
Reply Favorite View the author
All Replies
hotime
deepin
2023-09-01 03:01
#1

完善了一下在深度终端雷神模式中使用的体验,键入待复制的内容并回车键确认后会自动隐藏雷神终端,等待下次唤出。

创建并编辑 auto-copy脚本

sudo vim /usr/local/bin/auto-copy

内容如下:

#!/bin/bash

# 友情提示:
# 1、请在深度终端的雷神模式中使用此脚本。
# 2、此脚本在输入内容后会通过模拟快捷键隐藏雷神终端,所以请勿修改默认快捷键Alt+F2
# 3、如Alt+F2不方便使用,请通过“控制中心-键盘和语言-快捷键”中下方加号按钮添加自定义快捷键
# 示例如下: 名称:呼叫雷神终端   命令:deepin-terminal -q   快捷键:Alt+Q

clear
i=0
while true
do
	i=$((i+1))
	read -p "内容$(printf "%02d" $i):" text
	if [[ $text == "exit" ]]; then
		break
	fi
	echo $text | xsel -b
	xdotool key Alt+F2
	sleep 1
done
clear
echo "程序已退出"
xdotool key Alt+F2

为脚本赋予执行权限:

sudo chmod +x /usr/local/bin/auto-copy

安装脚本中所需要的的 xsel

sudo apt install -y xsel 

使用快捷键Alt+F2或者新增的自定义快捷键打开深度终端的雷神模式,输入 auto-copy以执行此脚本。

键入任意需要复制的内容,以回车键确认,确认后键入内容会自动复制到剪切板中,并且雷神终端界面会自动隐藏。再次需要复制键入内容时,通过快捷键唤出雷神终端,输入待复制的内容即可。

不再使用脚本时,键入exit以退出脚本、或Ctrl+C退出脚本、或关闭雷神终端。


使用效果:(我这里新增的自定义快捷键是Alt+Q还算顺手)

录屏_选择区域_20230831192407.gif

Reply View the author
qq4945286
deepin
2023-09-01 03:28
#2
hotime

完善了一下在深度终端雷神模式中使用的体验,键入待复制的内容并回车键确认后会自动隐藏雷神终端,等待下次唤出。

创建并编辑 auto-copy脚本

sudo vim /usr/local/bin/auto-copy

内容如下:

#!/bin/bash

# 友情提示:
# 1、请在深度终端的雷神模式中使用此脚本。
# 2、此脚本在输入内容后会通过模拟快捷键隐藏雷神终端,所以请勿修改默认快捷键Alt+F2
# 3、如Alt+F2不方便使用,请通过“控制中心-键盘和语言-快捷键”中下方加号按钮添加自定义快捷键
# 示例如下: 名称:呼叫雷神终端   命令:deepin-terminal -q   快捷键:Alt+Q

clear
i=0
while true
do
	i=$((i+1))
	read -p "内容$(printf "%02d" $i):" text
	if [[ $text == "exit" ]]; then
		break
	fi
	echo $text | xsel -b
	xdotool key Alt+F2
	sleep 1
done
clear
echo "程序已退出"
xdotool key Alt+F2

为脚本赋予执行权限:

sudo chmod +x /usr/local/bin/auto-copy

安装脚本中所需要的的 xsel

sudo apt install -y xsel 

使用快捷键Alt+F2或者新增的自定义快捷键打开深度终端的雷神模式,输入 auto-copy以执行此脚本。

键入任意需要复制的内容,以回车键确认,确认后键入内容会自动复制到剪切板中,并且雷神终端界面会自动隐藏。再次需要复制键入内容时,通过快捷键唤出雷神终端,输入待复制的内容即可。

不再使用脚本时,键入exit以退出脚本、或Ctrl+C退出脚本、或关闭雷神终端。


使用效果:(我这里新增的自定义快捷键是Alt+Q还算顺手)

录屏_选择区域_20230831192407.gif

这个不错

Reply View the author
qq4945286
deepin
2023-09-01 03:38
#3
qq4945286

这个不错

这样就方便多了,谢谢!

Reply View the author
qq4945286
deepin
2023-09-16 15:49
#4
hotime

完善了一下在深度终端雷神模式中使用的体验,键入待复制的内容并回车键确认后会自动隐藏雷神终端,等待下次唤出。

创建并编辑 auto-copy脚本

sudo vim /usr/local/bin/auto-copy

内容如下:

#!/bin/bash

# 友情提示:
# 1、请在深度终端的雷神模式中使用此脚本。
# 2、此脚本在输入内容后会通过模拟快捷键隐藏雷神终端,所以请勿修改默认快捷键Alt+F2
# 3、如Alt+F2不方便使用,请通过“控制中心-键盘和语言-快捷键”中下方加号按钮添加自定义快捷键
# 示例如下: 名称:呼叫雷神终端   命令:deepin-terminal -q   快捷键:Alt+Q

clear
i=0
while true
do
	i=$((i+1))
	read -p "内容$(printf "%02d" $i):" text
	if [[ $text == "exit" ]]; then
		break
	fi
	echo $text | xsel -b
	xdotool key Alt+F2
	sleep 1
done
clear
echo "程序已退出"
xdotool key Alt+F2

为脚本赋予执行权限:

sudo chmod +x /usr/local/bin/auto-copy

安装脚本中所需要的的 xsel

sudo apt install -y xsel 

使用快捷键Alt+F2或者新增的自定义快捷键打开深度终端的雷神模式,输入 auto-copy以执行此脚本。

键入任意需要复制的内容,以回车键确认,确认后键入内容会自动复制到剪切板中,并且雷神终端界面会自动隐藏。再次需要复制键入内容时,通过快捷键唤出雷神终端,输入待复制的内容即可。

不再使用脚本时,键入exit以退出脚本、或Ctrl+C退出脚本、或关闭雷神终端。


使用效果:(我这里新增的自定义快捷键是Alt+Q还算顺手)

录屏_选择区域_20230831192407.gif

请问这个在wayland模式下怎样调用。

Reply View the author
hotime
deepin
2023-09-16 17:19
#5
qq4945286

请问这个在wayland模式下怎样调用。

wayland模式下也能用,一样的操作。

只是剪切板有点小BUG,有些复制的内容不会出显示在剪切板,比如这个脚本复制的内容,但Ctrl+V是可以粘贴出来的。(我这边测试的结果)

Reply View the author
qq4945286
deepin
2023-09-16 20:54
#6
hotime

wayland模式下也能用,一样的操作。

只是剪切板有点小BUG,有些复制的内容不会出显示在剪切板,比如这个脚本复制的内容,但Ctrl+V是可以粘贴出来的。(我这边测试的结果)

我这边按ctrl+v粘贴不出来

Reply View the author
qq4945286
deepin
2023-09-16 20:56
#7
qq4945286

我这边按ctrl+v粘贴不出来

ctrl+v粘贴到记事本不行,发现可以粘贴到这回复的里面。粘贴到blender也不行。

Reply View the author
hotime
deepin
2023-09-17 02:52
#8
qq4945286

ctrl+v粘贴到记事本不行,发现可以粘贴到这回复的里面。粘贴到blender也不行。

深度剪切板dde-clipboard在wayland中有些BUG,还不够完善。

还是先用X11吧,等这问题修复了再用wayland

或者:粘贴的时候,借助fcitx5输入法内置的剪切板来将xsel复制的文字粘贴出来。方法是在复制完之后,在需要粘贴文字的地方使用快捷键Ctrl+; 然后按回车或者空格将第一个候选项上屏。

录屏_选择区域_20230916185404.gif


当然,你也可以修改这一默认按键来方便使用,控制中心 - 键盘和语言 - 输入法 - 高级设置 - 附加组件 - 剪切板, 点击右侧齿轮按钮修改触发键。

截图_选择区域_20230916185940.png

Reply View the author
qq4945286
deepin
2023-09-17 04:27
#9
hotime

深度剪切板dde-clipboard在wayland中有些BUG,还不够完善。

还是先用X11吧,等这问题修复了再用wayland

或者:粘贴的时候,借助fcitx5输入法内置的剪切板来将xsel复制的文字粘贴出来。方法是在复制完之后,在需要粘贴文字的地方使用快捷键Ctrl+; 然后按回车或者空格将第一个候选项上屏。

录屏_选择区域_20230916185404.gif


当然,你也可以修改这一默认按键来方便使用,控制中心 - 键盘和语言 - 输入法 - 高级设置 - 附加组件 - 剪切板, 点击右侧齿轮按钮修改触发键。

截图_选择区域_20230916185940.png

谢谢!现在还是先用x11前面只是到w模式下试了一下

Reply View the author
hotime
deepin
2023-09-17 07:14
#10
qq4945286

谢谢!现在还是先用x11前面只是到w模式下试了一下

xsel或是xclip似乎是针对X11的,wayland中需要使用类似wl-clipboard这样的。

sudo apt install -y wl-clipboard

具体用法是echo "hello world" | wl-copy,这样在wayland中可以将字符串"hello world"复制到系统剪贴板中,当然dde-clipboard中暂时看不到。但这次亲测确信可以用!!!

把这指令补充到auto-copy脚本中,增加是否是wayland的判断,如下:

#!/bin/bash

# 友情提示:
# 1、请在深度终端的雷神模式中使用此脚本
# 2、如果使用X11模式,请安装xsel;如果使用wayland模式,请安装wl-clipboard
# 3、此脚本在输入内容后会通过模拟快捷键隐藏雷神终端,所以请勿修改默认快捷键Alt+F2
# 4、如Alt+F2不方便使用,请通过“控制中心-键盘和语言-快捷键”中下方加号按钮添加自定义快捷键
# 示例如下: 名称:呼叫雷神终端   命令:deepin-terminal -q   快捷键:Alt+Q

clear

i=0

# X11中使用xsel,以复制文本至系统剪贴板
command_copy() {
	echo $text | xsel -b
}

# wayland中使用wl-copy,以复制文本至系统剪贴板
if [[ $XDG_SESSION_TYPE == "wayland" ]]; then
	command_copy() {
		echo $text | wl-copy
	}
fi

while true
do
	i=$((i+1))
	read -p "内容$(printf "%02d" $i):" text
	if [[ $text == "exit" ]]; then
		break
	fi
	command_copy
	xdotool key Alt+F2
	sleep 1
done

clear

echo "程序已退出"

xdotool key Alt+F2

Reply View the author
qq4945286
deepin
2023-09-17 07:37
#11
hotime

xsel或是xclip似乎是针对X11的,wayland中需要使用类似wl-clipboard这样的。

sudo apt install -y wl-clipboard

具体用法是echo "hello world" | wl-copy,这样在wayland中可以将字符串"hello world"复制到系统剪贴板中,当然dde-clipboard中暂时看不到。但这次亲测确信可以用!!!

把这指令补充到auto-copy脚本中,增加是否是wayland的判断,如下:

#!/bin/bash

# 友情提示:
# 1、请在深度终端的雷神模式中使用此脚本
# 2、如果使用X11模式,请安装xsel;如果使用wayland模式,请安装wl-clipboard
# 3、此脚本在输入内容后会通过模拟快捷键隐藏雷神终端,所以请勿修改默认快捷键Alt+F2
# 4、如Alt+F2不方便使用,请通过“控制中心-键盘和语言-快捷键”中下方加号按钮添加自定义快捷键
# 示例如下: 名称:呼叫雷神终端   命令:deepin-terminal -q   快捷键:Alt+Q

clear

i=0

# X11中使用xsel,以复制文本至系统剪贴板
command_copy() {
	echo $text | xsel -b
}

# wayland中使用wl-copy,以复制文本至系统剪贴板
if [[ $XDG_SESSION_TYPE == "wayland" ]]; then
	command_copy() {
		echo $text | wl-copy
	}
fi

while true
do
	i=$((i+1))
	read -p "内容$(printf "%02d" $i):" text
	if [[ $text == "exit" ]]; then
		break
	fi
	command_copy
	xdotool key Alt+F2
	sleep 1
done

clear

echo "程序已退出"

xdotool key Alt+F2

这下是可以了,谢谢!

Reply View the author