JustToThePoint English Website Version
JustToThePoint en español
JustToThePoint in Thai

Cómo explotar tu productividad con un lanzador

Introducción

Un lanzador es un cuadro de texto que aparece cuando usas una combinación de teclas predefinida. Incrementa considerablemente tu productividad porque mantiene tus manos en el teclado. Puedes evitar la tentación de tocar el ratón pues te obliga a escribir en el cuadro de texto y así iniciar rápidamente aplicaciones, buscar archivos, reproducir música, buscar en la web, ejecutar comandos del shell y del sistema (bloqueo, apagado), etc.

Alfred

  1. Uso básico: Puede buscar archivos en el Finder (find midocumento.pdf), abrir archivos (open midocumento.pdf), definir una palabra (define conspiración), hacer cálculos matemáticos (4*8, =sin(Pi/ 2)), realizar acciones del sistema (lock -bloqueo-, restart -reinicio-, shutdown -apagado-, volup -subir volumen-, voldown -bajar volumen-, mute -silenciar-), abrir rápidamente el terminal y ejecutar comandos de shell (>ls, >cd Dropbox/), buscar en la web (google/bing/youtube noticias en Ucrania), etc.
  2. Administrador de portapapeles (clipboard, ⌥⌘C). Alfred viene con un administrador de portapapeles, pero debes habilitarlo en las Preferencias de Alfred, en Features (características), Clipboard History (Historial del Portapapeles). Usa la teclas de acceso rápido Cmd + S para guardar un clip de texto del administrador del portapapeles.

    El equivalente a la tecla Alt de un teclado de PC es la tecla de Opción (⌥) en macOS. La tecla de Windows es la tecla de comando, ⌘.

  3. Snippets (snip). Puedes crear snippets de texto, emojis, símbolos, citas, etc. de uso frecuente. Para crear uno nuevo: Alfred’s Preferences (Preferencias de Alfred), Features (Características), Snippets, haz clic en el botón “+” en la parte inferior del cuadro derecho. Name (Nombre, por ejemplo, “Firma”), Keyword (palabra clave: “firma”), Snippet (“Esta es mi firma, bla… bla… bla…”). Se creará dentro de la colección Dynamic Context, y el prefijo de esta colección es “::”. Para usarlo, simplemente escribe snip ::firma. Asegúrate de habilitar “Automatically expand snippets by default”, es decir, expandir snippets automáticamente de forma predeterminada".
  4. Búsquedas web personalizadas. Te permite configurar un acceso directo para iniciar una búsqueda en cualquier sitio web. Alfred’s Preferences (Preferencias de Alfred), Web search (Búsqueda web), Search URL(URL de búsqueda, por ejemplo, https://justtothepoint.com/search/?query={query}), Tittle (Título: JustToThePoint), Keyword (Palabra clave: jttp).

Everything y Wox

Albert Launcher

Albert Launcher es un lanzador agnóstico rápido y flexible, es decir, independiente del escritorio.

Albert viene con un buen número de extensiones y debes habilitar aquellas que te interesen: Applications (te permite lanzar aplicaciones desde Albert), Calculator, Browser Bookmarks, Files (buscar un archivo o directorio y abrirlo), WebSearch (ir directamente a una determinada URL -página web- o buscar en Google, Bing, Youtube, etc.), System (órdenes típicas de sistema, reboot, shutdown, etc.).

Para sacarle el máximo provecho, debes instalar, al menos, Diccionario Gnome (sudo snap install gnome-dictionary) y el administrador de portapapeles, CopyQ y habilitarlos: Albert, Extensions, Python, Gnome Dictionary (trigger: def word) y CopyQ (trigger: cq).

¿Qué es Rofi?

Rofi es un conmutador de ventanas gratuito y de código abierto, un lanzador de aplicaciones popular y potente y de sesiones SSH, y una alternativa a dmenu. Rofi es popular, simple y muy configurable, puedes cambiar desde los atajos de teclado hasta su apariencia. ![Image](/software/images/computerBenProductivity.jpeg ./software/images/computerBenProductivity2.jpg)

Instalación

  1. Ubuntu, Debian: sudo apt install rofi
  2. Arco: sudo pacman -S rofi

Uso

Hay muchos modos en los que Rofi puede trabajar:

  1. run. Puede obtener una lista de los ejecutables disponibles en tu $PATH y lanzarlos. drun es similar, pero la lista se crea a partir de las aplicaciones disponibles en tu escritorio.
  2. window. Te permite conmutar o cambiar entre las ventanas actualmente activas en tu servidor X.
  3. shsh. Se utiliza para acceder rápidamente a sistemas remotos. Crea una lista de hosts remotos basada en ~/.ssh/config y ~/.ssh/known_hosts.

Para lanzar Rofi directamente en un modo determinado, especifica un modo con rofi -show mode, por ejemplo, rofi -show run, o también puede especificar una lista de modos, por ejemplo, rofi -modi “run,drun” -show run. Muestra la ventana de dialogo con los ejecutables disponibles en tu PATH y puedes cambiar al modo de lanzador de aplicaciones de escritorio (drun). La combinación de teclas Ctrl + tabulador te permite cambiar entre modos.

Temas Rofi

Puedes seleccionar un tema para este lanzador con la orden rofi-theme-selector como, por ejemplo, Pop-Dark. Pulsa Enter/INTRO para visualizarlo y Alt + A para aceptar el nuevo tema.

Configuración de Rofi

El archivo de configuración predeterminado está en ~/.config/rofi/config.rasi. Puede obtener fácilmente una plantilla usando el siguiente comando: rufi -dump-config > ~/.config/rofi/config.rasi

configuration {
	display-drun: "Applications:";
	display-window: "Windows:";
	modi: "window,drun,run,emoji";
	kb-cancel: "Escape,Alt+F1";
	color-normal: "#1c2023, #919ba0, #1c2023, #a4a4a4, #1c2023";
	color-urgent: "argb:00000000, #f43753, argb:00000000, argb:00000000, #e29a49";
	color-active: "argb:00000000, #49bbfb, argb:00000000, argb:00000000, #e29a49";
	color-window: "#1c2023, #919ba0, #1c2023";
	show-icons: true;
	icon-theme: "Papirus";
 }

Plugins

bindsym $mod+d exec "rofi -modi run,drun,emoji,window -show run"
bindsym $mod+Shift+d exec rofi -show p -modi p:$HOME/.local/bin/rofi-power-menu -theme Paper -font "JetBrains Mono NF 16" -width 20 -lines 6
bindsym $mod+Shift+y exec rofi-pass

Rofi es muy flexible. Explotemos su potencial.

En primer lugar, vamos a utilizar Rofi para editar nuestros archivos de configuración. Credits: rofi-edit

#!/bin/bash
# @description Script principal de mi sistema.
myTerm=alacritty
myEdit=atom
myBrowser=brave

# Realiza una búsqueda utilizando los motores duckduckgo y Google.
duckit(){
	option=$(rofi -dmenu -i -p "Type a term to search:") || exit 1
	if [[ ${option} == "" ]]
	then
		$myBrowser "https://duckduckgo.com" "https://google.com"
	else
		$myBrowser "https://duckduckgo.com/?q=$option&t=ffab&atb=v1-1" "https://google.com/search?q=$option"
	fi
}

# pactl es una herramienta básica y sencilla de control de pulseaudio. Establece el volumen del "sink" (dispositivo de audio) predeterminado.
volctl() {
    pactl set-sink-volume @DEFAULT_SINK@ $1
}

# Aumentamos el volumen del dispositivo de audio predeterminado un 20%.
up() {
    volctl "+20%"
}

# Disminuimos el volumen del dispositivo de audio predeterminado un 20%.
down() {
    volctl "-20%"
}

# Silencia y reactiva el dispositivo de audio predeterminado.
mute() {
    pactl set-sink-mute @DEFAULT_SINK@ toggle
}

menu(){
	printf "1. editar alacritty\n"
	printf "2. editar espanso\n"
	printf "3. editar i3\n"
	printf "4. editar .zshrc\n"
	printf "5. editar este script (rofi-main.sh).\n"
	printf "6. apagar\n"
	printf "7. reiniciar\n"
	printf "8. suspender\n"
	printf "9. i3 shortcuts\n"
	printf "10. espanso shortcuts.\n"
	printf "11. My bash scripts.\n"
	printf "12. rofi-pass\n"
	printf "13. emojis.\n"
	printf "14. Define word.\n"
	printf "15. duckduckgo.\n"
	printf "16. locate and visualize\n"
	printf "17. clipboard\n"
	printf "18. tasks\n"
	printf "19. Volumen up\n"
	printf "20. Volumen down\n"
	printf "21. Mute\n"
	printf "22. pavucontrol\n"
	printf "23. screenshot\n"
}

main(){
    choice=$(menu | rofi -dmenu | cut -d. -f1)

	case $choice in
		1) $myEdit "$HOME/.config/alacritty/alacritty.yml" ;;
		2) $myEdit "$HOME/.config/espanso/match/base.yml" ;;
		3) $myEdit "$HOME/.config/i3/config" ;;
		4) $myEdit "$HOME/.zshrc" ;;
		5) $myEdit "$HOME/.local/bin/rofi-main.sh" ;;
		6) systemctl poweroff ;;
		7) systemctl reboot ;;
		8) systemctl suspend ;;

Asume que tienes polkit instalado para permitir que usuarios sin privilegios puedan ejecutar órdenes de administración de energía: systemctl reboot (apagar y reiniciar el sistema), systemctl poweroff (apagar el sistema), and systemctl suspend (suspender el sistema).

		9) egrep ^bind ~/.config/i3/config  | cut -d " " -f 2- | rofi -i -dmenu -p "Shortcuts" ;;

¿Tiene problemas para recordar todos los accesos directos de su i3? No hay problema. Esta es una línea típica del archivo de configuración i3: bindsym $mod+Shift+q kill.

En primer lugar, queremos solo las lineas que comienzan con bind(sym) (egrep ^bind ~/.config/i3/config). A continuación, eliminamos información que no es necesaria con la orden cut -d " " -f 2- (-d es una opción para utilizar el espacio " " como delimitador, por defecto es el tabulador TAB, -f 2 seleccionaría solo el segundo campo , -f 2- selecciona desde el segundo campo hasta el final de la línea). Finalmente, utilizamos rofi para mostrar todos los atajos de teclado. rofi -i dmenu es el modo “dmenu” de Rofi.

		10) grep "trigger: " ~/.config/espanso/match/base.yml |  sed 's/- trigger: "\(.*\)"/\1/g' | rofi -i -dmenu -p "Shortcuts" ;;

Utilizamos grep para obtener todos los “triggers”, disparadores o palabras claves que has definido en Espanso para expandir . grep “trigger: " ~/.config/espanso/match/base.yml devuelve una lista donde cada línea presenta el siguiente formato: - trigger: “:name”. Entonces, usamos sed para realizar una búsqueda y reemplazo global (/g). La sintaxis de sed es la siguiente: ’s/regexp/replacement/flags'.

Definimos el primer y único grupo (.*\) entre dos comillas dobles. Finalmente, reemplazamos la línea con este primer grupo (\1), por lo que la línea - trigger: “:name” se reemplaza por :name.

Se presta bastante a confusión porque tenemos que escapar los paréntesis de apertura “(” y cierre “)”.

		11) grep -r "description" .local/bin  |  cut -d " " -f 1,3- | rofi -i -dmenu -p "Shortcuts" 

Esta línea recupera todos los archivos y líneas que contienen la cadena “description” en nuestro directorio de scripts, así podemos recordar su funcionalidad y sintaxis. La cadena description, por ejemplo, # @description Script principal de mi sistema, explica el propósito y sintaxis del script.

		12) rofi-pass ;;  # Usa pass y rofi para obtener un gestor de contraseñas
		13) rofi -show emoji -modi emoji ;; # Usa rofi-emoji para buscar emojis rápidamente.
		14) QUERY=$(rofi -dmenu -p 'Type in the word to search:') && sdcv -n "$QUERY" | rofi -dmenu ;;

Crea un diccionario usando rofi como “front-end” y “sdcv” como “back-end”. sdcv es una utilidad sencilla de consola y multiplataforma para trabajar con diccionarios en formato StarDict. Instalación: sudo pacman -S sdcv, yay -S stardict-wordnet.

Primero, abrimos una ventana para que el usuario pueda teclear la palabra que desea buscar (QUERY=$(rofi -dmenu -p ‘Type in the word to search:’)), y guardamos la palabra que el usuario escribe en la ventana emergente en la variable QUERY. A continuación, pasamos dicha palabra a sdcv y redireccionamos su salida a una ventana rofi.

		15) duckit ;;
		16) xdg-open "$(locate home | rofi -dmenu -i -p "locate:")" ;;
		# Con rofi podemos encontrar rápidamente archivos por nombre (locale) y ejecutarlos
		17) rofi -modi "clipboard:greenclip print" -show clipboard -run-command ‘{cmd};;
		18) task | rofi -i -dmenu -p "Next tasks" ;;
		19) up ;;
		20) down ;;
		21) mute ;;
		# PulseAudio Volume Control (pavucontrol) es una herramienta de control de volumen basada en GTK para el servidor de sonido PulseAudio
		22) pavucontrol ;;
		# scrot es una aplicación de captura de pantalla de línea de comando minimalista. Toma una captura de pantalla y la guarda en Dropbox.
		23) scrot -s ~/Dropbox/%b%d::%H%M%S.png ;;
	esac
}

main

Taskwarrior es un software gratuito y de código abierto que administra tu lista de tareas pendientes desde la línea de comandos, es decir, un administrador de tareas pendientes en línea de comandos. Redireccionamos su salida en una ventana rofi para que podamos visualizarlas.

rofi -modi “clipboard:greenclip print” -show clipboard -run-command ‘{cmd}’ añade la funcionalidad de gestor de portapapeles utilizando greenclip

Bitcoin donation

JustToThePoint Copyright © 2011 - 2024 Anawim. ALL RIGHTS RESERVED. Bilingual e-books, articles, and videos to help your child and your entire family succeed, develop a healthy lifestyle, and have a lot of fun. Social Issues, Join us.

Esta web utiliza 'cookies' propias y de terceros para ofrecerte una mejor experiencia y servicio.
Al navegar o utilizar nuestros servicios, estas aceptando nuestra Política de Cookies, así como, nuestros Términos y condiciones de uso.