Files
arch/minimal-niri-dotfiles/.config/Thunar/uca.xml
2026-03-31 20:13:15 +08:00

124 lines
4.8 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<icon>utilities-terminal</icon>
<name>Open Terminal Here</name>
<submenu></submenu>
<unique-id>1763109685799433-1</unique-id>
<command>kitty -e fish</command>
<description>Example for a custom action</description>
<range></range>
<patterns>*</patterns>
<startup-notify/>
<directories/>
</action>
<action>
<icon></icon>
<name>多媒体信息</name>
<submenu></submenu>
<unique-id>1769424941490550-1</unique-id>
<command>kitty --class &quot;media_info&quot; -e media-info %f </command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<audio-files/>
<video-files/>
</action>
<action>
<icon></icon>
<name>粘贴为链接</name>
<submenu></submenu>
<unique-id>1769427857102992-1</unique-id>
<command>sh -c &apos;wl-paste -t text/uri-list | python3 -c &quot;
import sys, os, urllib.parse
dest_dir = sys.argv[1]
# 逐行读取剪贴板里的文件
for line in sys.stdin:
# 1. 清理路径解码URL并去掉 file:// 前缀
src = urllib.parse.unquote(line.strip()).replace(\&quot;file://\&quot;, \&quot;\&quot;)
# 2. 基础检查
if not src or not os.path.exists(src): continue
# 3. 计算目标文件名
filename = os.path.basename(src)
target = os.path.join(dest_dir, filename)
# 4. 重名检测循环:如果有同名文件,变成 \&quot;文件名 (1).后缀\&quot;
root, ext = os.path.splitext(filename)
counter = 1
while os.path.exists(target):
target = os.path.join(dest_dir, f\&quot;{root} ({counter}){ext}\&quot;)
counter += 1
# 5. 创建链接
try: os.symlink(src, target)
except: pass
&quot; %f&apos;</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<directories/>
</action>
<action>
<icon></icon>
<name>粘贴剪贴板图片</name>
<submenu></submenu>
<unique-id>1769429285959977-2</unique-id>
<command>bash -c &apos;d=&quot;%f&quot;;[ -d &quot;$d&quot; ]||d=&quot;$(dirname &quot;$d&quot;)&quot;;cd &quot;$d&quot;||exit;n=&quot;img_$(date -Iseconds|cut -d+ -f1|tr T _|tr : -)&quot;;t=$(wl-paste -l);if echo &quot;$t&quot;|grep -q &quot;^image/&quot;;then wl-paste -t image/png&gt;&quot;$n.png&quot;;elif echo &quot;$t&quot;|grep -q &quot;text/uri-list&quot;;then u=$(wl-paste -t text/uri-list|head -n1);if [[ &quot;$u&quot; == file://* ]];then p=&quot;${u#file://}&quot;;f=$(python3 -c &quot;import sys,urllib.parse;print(urllib.parse.unquote(sys.argv[1]))&quot; &quot;$p&quot;);[ -f &quot;$f&quot; ]&amp;&amp;cp &quot;$f&quot; &quot;$n.${f##*.}&quot;;fi;fi&apos;</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<directories/>
</action>
<action>
<icon></icon>
<name>视频转gif</name>
<submenu></submenu>
<unique-id>1769514623477685-1</unique-id>
<command>kitty --class=&quot;floating-term&quot; -e video2gif %F</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<video-files/>
</action>
<action>
<icon></icon>
<name>图片转png</name>
<submenu></submenu>
<unique-id>1769516013413116-2</unique-id>
<command>bash -c &apos;exec 1&gt;&gt;/tmp/img_err.log 2&gt;&amp;1; /usr/bin/notify-send &quot;图片转换&quot; &quot;正在后台处理 $# 张图片...&quot;; for f in &quot;$@&quot;; do /usr/bin/magick -background none &quot;$f&quot; -delete 1--1 &quot;$(echo &quot;$f&quot; | sed &quot;s/\.[^.]*$//&quot;).png&quot;; done; /usr/bin/notify-send &quot;图片转换&quot; &quot;处理完成&quot;&apos; -- %F</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<image-files/>
</action>
<action>
<icon></icon>
<name>压缩视频大小</name>
<submenu></submenu>
<unique-id>1770021157399945-1</unique-id>
<command>kitty --class floating-term bash -c &apos;f=&quot;$1&quot;; out=&quot;$(echo &quot;$f&quot; | sed &quot;s/\.[^.]*$//&quot;)_compressed.mp4&quot;; echo &quot;正在处理: $f&quot;; if ffmpeg -i &quot;$f&quot; -vf &quot;scale=trunc(iw/2)*2:trunc(ih/2)*2&quot; -c:v libx264 -crf 26 -preset slow -c:a aac -b:a 128k -pix_fmt yuv420p &quot;$out&quot;; then echo -e &quot;\n✅ 压缩完成!文件已保存为: $out&quot;; else echo -e &quot;\n❌ 压缩失败,请查看上方报错信息。&quot;; fi; read -n 1 -s -r -p &quot;按任意键退出...&quot;&apos; -- %f</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<video-files/>
</action>
<action>
<icon></icon>
<name>快速查看</name>
<submenu></submenu>
<unique-id>1770297188807065-1</unique-id>
<command>kitty --class=&quot;floating-term&quot; -e bash -c &quot;~/.local/bin/preview \&quot;\$1\&quot;; read -n 1 -s -r&quot; -- %f</command>
<description></description>
<range>*</range>
<patterns>*</patterns>
<directories/>
<audio-files/>
<image-files/>
<text-files/>
<video-files/>
</action>
</actions>