keyboard-shortcuts notepad++

keyboard-shortcuts - notepad++ plugins



¿Cómo imitar la funcionalidad CTRL-X, CTRL-V de Visual Studio en Notepad++? (8)

  1. Instalar el complemento NppPython (se puede hacer con Notepad ++ Plugin Manager)
  2. Cree este script de Python utilizando el menú Complementos -> Script de Python -> Nuevo script:

    if editor.getSelectionStart() == editor.getSelectionEnd(): editor.lineCut() else: editor.cut()

  3. Reiniciar notepad ++ (importante)

  4. Vaya a Configuración de menú -> Asignador de accesos directos -> Comandos de complemento

  5. Busque el script que acaba de crear en la lista y establezca el acceso directo de CTRL + X para él

  6. ¡Disfrutar!

Estoy usando Notepad ++ para algunos proyectos y pierdo la funcionalidad Ctrl + X , Ctrl + C de Visual Studio que corta o copia la línea actual completa cuando no hay texto seleccionado. El atajo de la línea de corte parece ser Ctrl + L , que no es tan conveniente como Ctrl + X y el atajo de copia parece ser Ctrl + D , Ctrl + L , que es aún menos conveniente.

Aunque una pregunta similar se ha formulado anteriormente, no se proporcionó la forma de hacerlo en Notepad ++ y no puedo encontrar una solución en el sitio de Notepad ++ o en sus foros.


El plugin de https://bitbucket.org/zastrowm/notepad-visualstudiolinecopy

tiene que ser todavía configurado como sigue:

  1. Ponlo en la carpeta notepad ++ / plugin

  2. abrir notepad ++ (reiniciar)

  3. en Configuración -> Asignador de accesos directos

    en Comandos de Scintilla , elimine las asociaciones existentes para Ctrl + C, X

    en Comandos de complemento , encuentre los scripts que acaba de crear y asigne sus accesos directos a ellos.




Puede agregar una secuencia de comandos con el complemento Python Script Notepad ++ y asignar Ctrl + C a la secuencia de comandos (eliminar la asignación Ctrl + C de SCI_COPY en el asignador de accesos directos, pestaña Comandos de Scintilla)

El guión es solo:

if editor.getSelectionStart() == editor.getSelectionEnd(): line = editor.getCurLine() editor.copyText(line) else: editor.copy()

Obviamente, simplemente agregue otro script similar para Ctrl-X que elimine la línea en su lugar.


Sintetizando todas las demás respuestas y comentarios, además de algunos pasos adicionales necesarios que no se han mencionado:

Scintilla proporciona un comando "copyAllowLine" que hace esto. Notepad ++ no expone ese comando en el mapeador de accesos directos, pero puede llamarlo desde un script de Python y asignar Ctrl + C a ese script. No hay un comando correspondiente para "cutAllowLine", pero un poco de código extra de Python lo hará. Estos scripts deben agregarse al menú y Notepad ++ debe reiniciarse antes de que estén disponibles en el asignador de accesos directos.

  1. Instalar el complemento Python Script (se puede hacer con Notepad ++ Plugin Manager)

  2. Cree los siguientes dos scripts de Python usando el menú Complementos -> Python Script -> Nuevo script

    copyAllowLine.py

    editor.copyAllowLine()


    cutAllowLine.py

    if editor.getSelectionStart() == editor.getSelectionEnd(): editor.lineCut() else: editor.cut()


  3. Python Script -> Configuración

    • En User Scripts , agregue un elemento de menú para cada script.

  4. Reiniciar notepad ++ (importante)

  5. Configuraciones -> Mapeador de accesos directos ...

    • en Comandos de Scintilla , elimine las asociaciones existentes para Ctrl + C y Ctrl + X.

    • en Comandos de complemento , encuentre los scripts que acaba de crear y asigne sus accesos directos a ellos.

Nota: cuando se instala a través del administrador de complementos, se instaló la versión 1.0.6. Cuando intenté ejecutar cualquier cosa relacionada con Python en Notepad ++ obtuve una excepción desconocida del administrador de complementos. La solución fue descargar e instalar manualmente el 1.0.8 .msi desde aquí: el instalador 1.0.8


Vaya a Configuración-> Asignador de accesos directos y haga clic en la pestaña "Comandos de Scintilla" en la parte superior. Debajo de allí debería poder cambiar el comando Ctrl + L a Ctrl + X.


puede escribir un programa con un gancho de evento de clave global, que cada vez que haga un Ctrl + X verifique si notepad ++ es la aplicación más importante que se está ejecutando, toma la pantalla, verifica si hay algún texto seleccionado (mirando la captura de pantalla y el color de su notepad ++ configuración), y envía un mensaje WM_KEYPRESS a la ventana notepad ++ simulando un Ctrl + L (suponiendo que está usando Windows).

(aunque esto no pondrá la línea en el portapapeles, tendrás que hacer un reconocimiento de caracteres para permitirlo)