Nesta postagem :
- Introdução
-
QuickPhrase_Time.py
script -
xclip
atalho
1.Introdução
O plug-in ao qual OP se refere é QuickPhrase e pode ser instalado via sudo apt-get install fcitx-modules fcitx-module-quickphrase-editor
. Usa ~/.config/fcitx/data/QuickPhrase.mb
para armazenar frases.
O principal objetivo aqui é ter uma maneira fácil de inserir uma string que contenha a hora atual no campo de texto que o usuário está editando no momento. Abaixo há duas soluções.
2. Script QuickPhrase_Time.py
Este script edita continuamente a linha no arquivo de configuração que possui time_now
frase e acrescenta a hora atual à linha. Este script deve ser iniciado automaticamente no login para a GUI .
O uso é simples:
python /path/to/QuickPhrase_Timer.py
Fonte de script
Também disponível como Github Gist , as versões atualizadas provavelmente irão para lá.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import subprocess
import time
import os
def run_cmd(cmdlist):
""" Reusable function for running external commands """
new_env = dict( os.environ )
new_env['LC_ALL'] = 'C'
try:
stdout = subprocess.check_output(cmdlist,env=new_env)
except subprocess.CalledProcessError:
pass
else:
if stdout:
return stdout
if __name__ == '__main__':
user_home = os.path.expanduser('~')
config_file = '.config/fcitx/data/QuickPhrase.mb'
config_full_path = os.path.join(user_home,config_file)
found = None
while True:
lines = []
time.sleep(1)
with open(config_full_path) as f:
for line in f:
lines.append(line.strip())
if line.startswith('time_now'):
found = True
# print(lines)
if found:
with open(config_full_path,'w') as f:
for line in lines:
if line.startswith('time_now'):
time_now = run_cmd(['date',
'+%Y-%m-%d %I:%M'
]).decode().strip()
line = 'time_now ' + time_now + '\n'
else:
line = line + '\n'
f.write(line)
3. atalho xclip
Caso o script python acima não funcione para você, aqui está uma solução alternativa: vincule o comando abaixo a um atalho de teclado
xclip -sel clip <<< $( date +%Y-%m-%d\ %I:%M )
Essencialmente, o que isto faz é copiar a saída de date
para sua área de transferência, que você pode liberar através do atalho Ctrl + V (que é comum para a maioria das aplicações como atalho de pasta).
Essa abordagem não depende do fctix
ou de qualquer outro método de entrada, portanto, é mais flexível e confiável.
Note que xclip
não está instalado por padrão. Obtê-lo via sudo apt-get install xclip