我需要一个用热键插入的时间戳,就像旧记事本中的 F5 一样。格式应为:
hh:mm dd.mm.yyyy.
Run Code Online (Sandbox Code Playgroud)
ps 塞尔维亚语中年末的点在语法上是正确的,所以这不是一个错误。
通过安装包xdotool,我们需要命令xdotool
sudo apt-get install xdotool
Run Code Online (Sandbox Code Playgroud)创建一个小脚本
#!/bin/bash
sleep 0.1
xdotool type $(date +"%H:%M")' '$(date +"%d.%m.%Y.")
Run Code Online (Sandbox Code Playgroud)
如果输出看起来不像
17:31 15.08.2015.
Run Code Online (Sandbox Code Playgroud)
使用
#!/bin/bash
sleep 0.1
xdotool type $(date +"%H")':'$(date +"%M")' '$(date +"%d")'.'$(date +"%m")'.'$(date +"%Y")'.'
Run Code Online (Sandbox Code Playgroud)如果按快捷键后时间未完全插入,请增加脚本中的参数sleep,例如0.5
使其可执行
chmod +x your_script
Run Code Online (Sandbox Code Playgroud)为脚本指定键盘快捷键,例如Super+F5 或其他未使用的快捷键。
这个答案是用 Nano 6.4 测试的。
\n据我所知,Nano 没有附带插入当前时间和日期时间戳的键盘快捷键。但是,Nano 确实提供了允许您配置一些内容的功能,以便您可以执行以下操作:
\n因此,您可以使用第三方命令行时间戳程序,并创建一个使用它的键盘快捷键。
\n以下是如何执行此操作:
\n使用 Nano(不是其他文本编辑器,因为您需要使用 Nano 的逐字输入功能)打开 Nanorc 文件;您可以nano ~/.nanorc打开 Nanorc 文件。
在其自己的行中输入以下内容(这利用了 Pilot06 在评论中提到的想法):
\nbind F5 "date +%I:%M\\ %d.%m.%Y." main\nRun Code Online (Sandbox Code Playgroud)\n或者,如果您想要 24 小时时间,请执行以下操作:
\nbind F5 "date +%H:%M\\ %d.%m.%Y." main\nRun Code Online (Sandbox Code Playgroud)\n现在,在 之间移动"d并按 Alt+v;然后按 Ctrl+t。
现在,在 之间切换."并按 Alt+v,然后按 Enter。
然后按 Alt+v 并按一次退格键。
\n您的行应该看起来像这样(但它可能看起来有点不同,并且不要复制/粘贴它,因为它可能不会将特殊字符计为逐字输入):
\nbind F5 "^Tdate +%I:%M\\ %d.%m.%Y.^M^?" main\nRun Code Online (Sandbox Code Playgroud)\n保存并关闭 Nano。你完成了。它在已经打开的 Nano 实例中不起作用(您必须关闭它们并重新启动它们)。
\n现在,每当您按 F5 时,它都会根据您的需要插入时间戳。
\n要查看名为 的命令行程序的指令date,请键入man date、date --help或info date(按 q 退出联机帮助页或信息页)。指令是像 %H 这样的东西。
这是一个奇特的时间戳的例子:
\ndate +%-d\\ %B\\ %-Y\\ \\(%A\\)\xe2\x80\x94%-I:%M:%S\\ %p