
P:¿Cómo agrego argumentos de línea de comandos a una aplicación fijada y aún así hago que coincida?
Mis hábitos/flujo de trabajo tienen varias aplicaciones "fijadas" en la barra de tareas de Windows, por lo que Win-#
"siempre" me cambiará a la ventana correcta.
(Soy un usuario de emacs/ess para R, no para RStudio). Si ya tengo un gráfico abierto, Win-2
me cambiará a la ventana de trazado inmediatamente. Sin embargo, si un trazado aún no se ha completado, al Win-2
presionarlocomenzaruna nueva instancia de esa aplicación. En este caso, las propiedades del icono son:
Objetivo:
C:\R\R-3.5.3\bin\x64\Rterm.exe
Empezar en:
C:\R\R-3.5.3\bin\x64
Tecla de acceso directo:
None
Correr:
Normal Window
Quiero configurarlo para que al presionar inadvertidamente Win-2
mientras no existe un gráfico no se inicie una nueva instancia de Rterm
. Un paso mitigante podría ser Rterm
salir inmediatamente agregando --help
al objetivo, pero al hacerlo, la coincidencia del nombre de la ventana falla y cualquier gráfico posterior que se abra no usará esa posición en la barra de tareas.
¿Hay alguna manera de agregar argumentos que no rompan la coincidencia de títulos? InuncaTengo la intención de iniciar R con ese ícono (siempre dentro de emacs/ess), por lo que si hay una manera de que nunca inicie una aplicación (simplemente cambie a ella si se crea en otro lugar), eso también sería bueno.
(Lo más probable es que una solución se centre en Windows: creo que R no tiene control ni participación en esto).
Respuesta1
De hecho, esta pregunta tiene poco que ver con el R
lenguaje de programación estadística.
Está más relacionado con elmicrosoft ventanas 10Sistema operativo.
Creo que puedes empezar a crear una solución a este problema creando un icono en el escritorio.
Aquí, agrega los argumentos que necesita en la línea de comandos del acceso directo representado por el icono del escritorio.
Por supuesto, le das un nombre al icono del escritorio.
Y ya tiene su Mighty Desktop Icon creado para el deleite del usuario.
Lo arrastras a la barra de tareas.
Presiona Windows+ 3y allí obtendrá su aplicación de software estático.
Ahora, al analizar el resultado de la Rterm --help
línea de comandos, es posible que encuentre un interruptor que no inicia una nueva instancia deRtérminomientras no exista ninguna trama.
ACTUALIZAR:
Creo que podríamos evitar obtener la ayuda de unRtérminoExperto, @r2evans. Se me ocurrió un One-Liner que podrías probar.
Simplemente cambie encima del cmd.exe /c pause
One-Liner con el %SystemRoot%\System32\WindowsPowerShell\v1.0\PowerShell.Exe -Command "If ((Get-Process -Name RTerm) -Eq $()) {Exit-PSSession}"
One-Liner.
En resumen, en lugar de encender elmicrosoft ventanas 10Preprocesador de línea de comandos, activa elmicrosoft ventanas Potencia ShellEntorno de scripting de Shell solo para alimentarlo con una If
declaración simple que verifica si se está ejecutando un gráfico y simplemente sale si no hay ningún gráfico.
Si hay un gráfico, al presionar la combinación de teclas de método abreviado Windows+ 3simplemente cambiará a su gráfico existente.