Crear un atajo de nueva capa (sin ventanita) en Photoshop

In Photoshop by Carlos A. Oliveras13 Comments

En una vida anterior, grabé un vídeo sobre cómo crear una nueva capa mediante un atajo de teclado en Photoshop. No obstante, este atajo tiene la pega de ser complicado de por sí (Ctrl+Mayús+N), y encima, luego todavía tienes que aceptar esta ventanita que aparece:

Cuadro de diálogo "Nueva capa"

A veces esta ventanita nos viene bien (caso típico: crear una capa gris y fusionarla en Superponer), pero la mayoría de veces no la necesitamos. En tal caso, si quieres crear la capa de una sola tacada, sin ventanitas ni historias, ve calentando las falanges para pulsar Ctrl+Alt+Mayús+N. La recompensa es valiosa: una nueva capa sin ese paso intermedio (y sin tener que usar el ratón), pero el atajo es muy complicado de pulsar con una mano. Con dos manos se puede, pero ya no se sabe si estás usando Photoshop o preparándote para tocar el piano.



El problema

En principio, uno pensaría: “Ningún problema, puedo redefinir los atajos desde Edición>Atajos de teclado” Pero esto es una solución a medias:

  • El atajo de nueva capa Ctrl+Mayús+N (el que incluye la ventanita) sí que se puede redefinir ya que equivale a la opción de menú “Capa>Nueva capa…“, y las opciones de menú se pueden vincular con un atajo de teclado (eso sí, el atajo ha de incluir la tecla Ctrl y/o una tecla de función). Es lo que expliqué en la entrada que enlacé al principio.
  • Sin embargo, el otro atajo, Ctrl+Alt+Mayús+N, no existe en ningún menú ni panel que yo sepa, y por tanto, tampoco se puede cambiar.

Para redefinir al segundo atajo, podemos recurrir a una ingeniosa artimaña: crear un script  que genere la nueva capa sin ventanita, y vincular la ejecución de este script a un atajo de teclado. Suena complicado, pero una vez hemos hecho lo que ahora comentaré, la aplicación del asunto es tan simple como usar cualquier otro atajo. Antes de seguir un aviso: “script” está traducido como “secuencia de comandos” en Photoshop.

El script del millón de dólares

Lo primero que necesitamos es ese script que cree la nueva capa sin la ventanita. Esto no es complicado, pero si de ello dependiera mi vida, me podría dar por muerto. Es la típica cosa que como no hagas habitualmente, se te olvida. Afortunadamente, Internet está lleno de buenas personas, como un tal Jeff Arola que publicó un script para hacer esto en un hilo de los foros de Adobe:

// =======================================================
var idMk = charIDToTypeID( “Mk  ” );
var desc10 = new ActionDescriptor();
var idnull = charIDToTypeID( “null” );
var ref9 = new ActionReference();
var idLyr = charIDToTypeID( “Lyr ” );
ref9.putClass( idLyr );
desc10.putReference( idnull, ref9 );
executeAction( idMk, desc10, DialogModes.NO );

Esto lo tenemos que copiar y pegar en un archivo de texto – el nombre es indiferente (por ejemplo, “Nueva capa sin ventana“). Una vez guardado dicho archivo, modificamos la extensión para que sea .jsx (puede ser necesario cambiar algún ajuste del Explorador de archivos para que muestre las extensiones).

[Nota posterior: Por algún motivo, a veces da un error y no acabo de entender por qué. En tal caso, probad a descargar y usar el archivo contenido en este rar: enlace de descarga.]

Hecho esto, por poder, ya podríamos abrir este script yendo a Archivo>Secuencias de comandos>Examinar…, e indicándole la ruta donde hemos creado este archivo. Pero evidentemente no vamos a hacer esto cada vez que queramos crear una capa nueva, no aportaría ninguna ventaja. Lo que queremos es que aparezca en los menús para poder enlazarlo con un atajo, y con ese fin colocaremos el archivo en la carpeta “oficial” de scripts de Photoshop. Dicha carpeta de scripts es:

  • Windows: C:\Program Files\Adobe\Adobe Photoshop CC 20XX\Presets\Scripts
  • Mac:  Photoshop CC 20XX/Presets/Scripts (no estoy seguro de esta ruta ya que no tengo mac, pero supongo que con esta indicación bastará)

Bien, ahora tenemos que cerrar Photoshop (si es que estaba abierto), y abrirlo de nuevo para el programa detecte este nuevo script que hemos colocado en esa carpeta. Para aseguros de que lo hayáis hecho bien, id al menú Archivo>Secuencias de comando: en la lista debería apareceros el script (junto a otros que vienen por defecto con Photoshop). Yo lo tengo en inglés, pero para que os hagáis una idea, el script que he creado me aparece así:

Menú Archivo>Secuencias de comando

Asignar un atajo de teclado al script

Bien, pues ya casi estamos: ahora que tenemos la creación directa de nueva capa como un elemento de menú, podemos ir a Edición>Atajos de teclado…, seleccionar en la parte superior de la ventana la opción que nos muestra los atajos de los menús de la aplicación, y a continuación, localizar en la lista de debajo el menú, submenú y entrada de submenú correspondientes (Archivo>Secuencias de comando>Nombre de nuestro script). Una vez lo encontremos, ya solo nos queda hacer clic a la derecha y asignarle un atajo (nota: como ya dije antes, este atajo ha de ser Ctrl+alguna tecla, o una tecla de función – no puede ser una tecla “suelta”).

Como ya he dicho, yo tengo el programa en inglés, pero a título de orientación, así pintan las cosas cuando le asigno un atajo al script (previamente colocado en la carpeta correcta):

Ventana de atajos de teclado en Photoshop

Si queréis más detalles sobre cómo funciona esto de crear un atajo para una opción del menú, podéis ver este vídeo más antiguo donde explicaba cómo asignar un atajo para mostrar/ocultar la capa actual.

Tras la teoría, la práctica

A partir de aquí, ya todo es cuesta abajo – en mi caso, he asignado Ctrl+Mayús+Ç, que suena complicado pero no lo es tanto ya que las tres teclas están una encima de la otra (no he podido usar Ctrl+Ç porque ya lo uso para otra cosa). No obstante, ojo a los que tengan la tentación de imitar mis atajos – recordad que aunque yo uso el ratón con la mano derecha, la tableta gráfica la uso con la izquierda. Es por eso que tengo algunos atajos redefinidos para el lado derecho del teclado. Si sistemáticamente usáis la mano derecha para el ratón o tableta (que es lo más común), puede que os venga mejor crear este tipo de atajos en el lado izquierdo del teclado.

Y eso es todo – una frikada tan específica que no creo que a la mayoría le interese demasiado, pero que puede ser una auténtica satisfacción para 4 gatos. O, como mínimo, un nuevo triunfo del hombre sobre la máquina, que no es poco.



Etiquetas: , , , , , , , , , , , ,

Comments

  1. Muchas gracias Carlos!!
    Habia tenido esta misma inquietud y lo habia resuelto con una accion; es bastante menos elegante que la que nos enseñas en esta entrada y ademas has echo q me pique el gusanillo de los scripts de photoshop… …a ver que mas se puede hacer con esto!!!
    Gracias de nuevo. Abrazos!!

    1. Author

      Carlos: Sí, en estos casos lo de la acción siempre es una solución comodín, pero lo malo, en mi opinión al menos, es que limitan mucho los atajos ya que han de incluir una tecla de función y se hace difícil pulsar el atajo con una mano agilmente. Pero es una alternativa, sobre todo para cosas que requieran varios pasos (lo cual puede compensar que el atajo sea más incómodo). Gracias por comentar, saludos.

  2. Muchas gracias Carlos !! Con este atajo, si que es muy practico, me costo un poco de trabajo hacerlo pero finalmente lo logre!! Saludos … : )

  3. Muy bueno Carlos, me la apunto.

    Aunque yo asigno a una de las teclas de la Wacom la combinación Ctrl+May+Alt, así no me da dolor en la mano de poner los dedos como un gorrino.

    Un abrazo.

  4. Author

    Amando: Genial, me alegro, gracias.

    Alejandro: Pues ahora que lo dices, podría hacer yo lo mismo también. Yo hace ya unos años decidí pasar de los botones de la tableta porque me iba mejor los atajos de teclado físico. Pero igual para algún caso así, valdría la pena recuperarlos… Gracias por la observación, saludos.

    1. Author

      Ricardo: Pues siento no poder sugerirte nada, pues a mí me funciona y en el foro donde se publicó no veo gente con quejas, ni aquí tampoco por ahora. No puedo ayudar con el script porque lo hizo el tal Jeff Arola. Solo se me ocurre decirte que te asegures de haber copiado y pegado bien el texto, y por supuesto, guardarlo como texto “plano”, o sea, un vulgar txt del bloc de notas o similar, no un documento tipo doc de Word o similares.
      Aparte, por supuesto, úsalo con un documento abierto. Si lo usases nada más abrir Photoshop, daría error,lógicamente.
      También podría ser que la versión de Photoshop influya, pero de nuevo, es algo que desconozco…
      Siento no poder ser de más ayuda, pero si averiguases el motivo, cuéntanos! Un saludo.

  5. Hola, Carlos, admirado gurú:

    Tengo para ti un par de noticias. Pero empezaré por exponerte primero el motivo principal (y real) de este comentario; se trata de lo siguiente:
    He seguido tus siempre claras instrucciones (en este caso bastante “heredadas” pero justamente reconocidas) para asignar, por medio de un script, un atajo de teclado personal bastante más cómodo, rápido y práctico para la creación de una NUEVA CAPA SIN CUADRO PREVIO DE DIÁLOGO. Efectivamente, como dices, la combinación de teclas (Ctrl+Shift+Alt+N en Windows) asignada por defecto -inmutable ella- no es nada de eso.

    Pero algo no ha funcionado; incluso sin asignarle aún un atajo, al lanzarla desde el menú me sale un mensaje de error que dice exactamente
    Error 8: Error de sintaxis.
    Linea: 2
    -> var idMk = charIDToTypeID( “Mk ” );
    Mis preguntas para ti (o para quien tenga a bien contestar alguna de ellas) son: ¿a qué puede responder este error? ¿Has probado este script en PS 20.0? ¿Sin problemas?. Y lo que en definitiva más me interesa: ¿se te ocurre una posible solución o dónde puedo buscarla?
    Mi sistema operativo es Windows 10 (x64) y estoy probando PS 20.0 (en español).
    Como apuntabas en el blog -coincido contigo-, este “truco” no es algo que vaya a hacer de éste un mundo mejor; como mucho, facilitará un poco el uso y disfrute de Photoshop a cuatro friquis; pero en cualquier caso, tampoco lleva mucho tiempo hacer este sencillo arreglito… (hasta que quizá un día el comité de expertos de Adobe nos eviten tener que hacerlo).
    Confío en que una posible solución a este problema pueda ayudar también a algún otro pirado.

    Y ahora las dos noticias:
    – La primera, que finalmente y a pesar de reconocer tus indiscutibles méritos, no van a poner tu nombre, de momento al menos, a ninguna calle o parque de esta villa (ingratos!). Lo intentaremos con algún astro, como tú mismo sugerías.
    – La segunda, que un tal Mangalick, según se oye por ahí, anda llamando a las puertas de Phase One con intención de integrarse en el equipo de Capture One.
    (… tranquilos; es sólo una broma de mal gusto para los posibles desertores de Lightroom que andan flirteando con Capture1)
    Nada más de momento. Me despido por ahora y, como siempre, enormemente agradecido por lo que haces y por cómo lo haces. Sinceramente.
    Un afectuoso saludo.

    1. Author

      Hola Jose Luis alias Sr. Pepetto: Es extraño porque he probado el script con el CC 2019 (he copiado y pegado el texto, etc.), y aparentemente no funcionaba, daba el mismo error que comentas.

      A continuación he probado a hacer lo mismo con el CC 2018, pensando que ahí sí funcionaría… pero daba el mismo error. Entonces he recordado que en el 2018 ya tenía hecho el script y guardado en la carpeta correspondiente, así que he copiado este archivo desde la carpeta del 2018, a la misma carpeta en CC 2019… y sí que funcionaba.

      He comparado este archivo “antiguo” y el nuevo que había creado yo ahora, y que daba error, y aparentemente son idénticos, la única diferencia es que en el antiguo (que funciona) algunas líneas están indentadas, o sea, como con espacios delante. Pero tampoco sé cómo aparecieron ahí esos espacios, si es que tienen algo que ver.

      No entiendo por qué un archivo funciona y el otro no: lo único que se me ocurre es que pruebes a descargar el archivo que a mí me funciona, a ver si a ti también. He añadido el enlace en la entrada, pero te lo pongo aquí también: descargar script. Espero que se entienda este follón de explicación.

      De lo demás, me he reído con la idea de Mangalick pasándose a Phase One. Sería el principio del fin de C1. xD

      Gracias por tus amables palabras, un saludo.

  6. Pues sí, Carlos, ¡¡ha funcionado!! (… el curioso mundo de los scripts!). Parece ser, o eso se puede deducir, que las líneas deben estar correctamente indentadas para que el script funcione. Hasta ahí, la cosa poco o nada tiene de curiosa; pero que el primero que “circuló” se te “autoindentara” (¡joé qué palabro!) sin enterarte, sí que me parece realmente curioso y sorprendente.
    El caso es que funcionó perfectamente -quizá alguien más lo celebre- y, una vez más, muchas gracias por la atención y un saludo.
    Joseluis

    1. Author

      Jose Luis: Exacto, eso es lo que no entiendo. Yo en su día no introduje esas indentaciones, aparecieron solas. O a lo mejor hay otra diferencia que no he percibido, porque lo miré rápidamente. Sea como sea, me alegro de que te haya servido, y además, así de paso si alguien más tiene el problema, ya tenemos la posible solución. Gracias por confirmar que el asunto ha funcionado, un saludo.

Leave a Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.