Selección de rango de líneas en Notepad ++


10

¿Cómo selecciono rápidamente un rango específico de líneas en Notepad ++? Tengo un archivo de texto que tiene más de 1 millón de líneas y necesito eliminar algunos fragmentos, pero seleccionar líneas manualmente solo lleva demasiado tiempo. Por ejemplo: necesito seleccionar líneas de 2000 a 12000, ¿cómo hacerlo rápido?


1
Pregunta similar sobre Stack Overflow.
trejder

Respuestas:


2

Tengo una mejor respuesta. Puede grabar una macro (eliminando, por ejemplo, 10líneas). Luego ejecútelo varias veces.

1) Ir a Macro > Start recording

2) mantenga presionado Shifty toque Downpara marcar, por ejemplo, 10líneas. Y eliminarlos.

3) Ir a Macro > Stop Recording

Ahora que su macro está registrada, puede guardarla para usarla en el futuro.

4) Ir a Macro > Save Current Recording Macro.... Y guárdelo con un nombre.

5) Mueva el cursor a la línea que desea eliminar líneas después de eso. Luego vaya a Macro > Run A Macro Multiple Times.... Y seleccione su macro y ejecútelo las Nveces que desee.


¡Esa es una idea! Esto puede funcionar, muchas gracias. :)
Mcyg

7

Solo Left Clickuna vez en línea. 2000Luego vaya a línea 12000, sostenga Shifty Left Clickotra vez.

1) Left Clicken línea2000

2) Ir a la línea 12000

3) Shift+ Left Clicken línea12000


1
Sí, pero pierdo la selección con Ctrl + G. De eso estoy hablando, pasar de 2000 a 12000 lleva años.
Mcyg

Ambas soluciones funcionan gracias!

3

Acababa de responder con esto en esta pregunta similar , pero parece una respuesta más adecuada aquí, y supongo que este título de pregunta obtendría más resultados ... así que, estoy publicando aquí y espero que no lo sea t algún tipo de paso en falso ... (¿tal vez debería ser solo un enlace al otro?)

# File:: selectGOTO.py
#   A N++ Python Script to enhance line selection speed compared to mouse, cursor, page controls.
#   Selects text from the [ start|end ] of current line to [ end|start ] of GOTO line.

# Install using:: Plugins -> Plugin Manager -> Python Script
# Create script using:: Plugins -> Python Script -> New Script -> "selectGoto.py"
# Add to menu:: Plugins -> Python Script -> Configuration -> [select script] [ add ]
# Create shortcut:: [Restart N++]
#   Settings -> Shortcut Mapper -> Plugin Commands -> selectGOTO -> [modify] [ctrl]+[shift]+[g]

# Simple usage:
#   [ctrl]+[shift]+[g] line#
#   Do your operation... (ie: del)

from Npp import *

class startAnchor:
    pos = 0

def selectGOTO( args ):
    endPos = editor.getCurrentPos()
    if( endPos > startAnchor.pos ):
        startAnchor.pos = editor.positionFromLine( editor.lineFromPosition( startAnchor.pos ) )
    else:
        tmp = startAnchor.pos
        startAnchor.pos = endPos
        endPos = tmp
    endPos = editor.getLineEndPosition( editor.lineFromPosition( endPos ) )
    editor.setSel( startAnchor.pos, endPos )
    editor.clearCallbacks()

def main():
    startAnchor.pos = editor.getCurrentPos()
    editor.callback( selectGOTO, [SCINTILLANOTIFICATION.UPDATEUI] )
    notepad.menuCommand( MENUCOMMAND.SEARCH_GOTOLINE )

main()

¡Excelente! Lo he estado buscando por años. Sin embargo, edité su código para que no mueva el punto de selección inicial, no hay necesidad de hacerlo. (Código eliminado después de if (endPos> startAnchor.pos)).
Nigel Touch

También creé versiones adicionales que seleccionan Marcador anterior (comando 43007) y Marcador siguiente (43006) que me convienen mejor.
Nigel Touch

0

1) haga clic en ctrl + g, dé el número de línea para ir a suponer 2000
2) Haga clic derecho y luego seleccione la opción Comenzar / Fin
3) haga clic en ctrl + g para dar el número de línea para ir a suponer 10000
4) Haga clic derecho y luego seleccione la opción Comenzar / Fin
5) Ctrl + c para copiar

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.