Come faccio a eliminare le righe di eliminazione di Notepad ++ come fa Eclipse?


74

Eclipse ha una scorciatoia da tastiera che cancella la linea corrente (se non è selezionato nulla) o tutte le linee che fanno parte del testo attualmente selezionato: Ctrl+ D.

C'è un modo per fare Ctrl+ Dfare la stessa cosa in Notepad ++?

Il meglio che potrei fare è rimappare il collegamento a Scintilla SCI_LINE_DELETE, ma questo elimina solo una riga alla volta, anche se la selezione si estende su più righe.

Risposte:


93

Ctrl+ Shift+ Lotterrà lo stesso effetto.

Ctrl+ Leliminerà la linea ma la manterrà anche negli appunti sostituendo il contenuto degli appunti.

Non sono sicuro che puoi mappare Ctrl + D per fare la stessa cosa o no. Non ho davvero fatto confusione con le mappature della tastiera con Notepad ++ poiché sono molto simili a quelle di Visual Studio


14
Brillante! Ora devo solo trovare ciò che Ctrl+Lè mappato su ... modifica aha, è mappato SCI_LINECUT. Questo è stato letteralmente il prossimo comando di Scintilla di seguito SCI_LINE_DELETE.
Matt Ball,

26
Si noti che Ctrl+Ltaglierà la linea (copiarla negli appunti). Per eliminare effettivamente la linea è Ctrl+Shift+L, questo eliminerà le linee selezionate senza sovrascrivere gli appunti.
Rosdi

1
@ RØŠÐÎ SCI_LINEDELETEè ciò che è Ctrl+Shift+Lstato mappato. Ci ho provato ma ha eliminato solo (senza copiare negli appunti) la prima delle righe selezionate, simile a OP. Mi sto perdendo qualcosa?
jinglesthula,

4
Perché non è questo nel menuEdit > Line Operations
aliopi il

20

Ho dovuto mappare Ctrl+ Dsu entrambi SCI_LINEDELETE e SCI_LINECUTper farlo funzionare come Eclipse. Spero sia utile.

Devi anche disabilitare o ricollegare in SCI_SELECTIONDUPLICATEmodo che non ci siano conflitti su Ctrl+ D.
Per disabilitare un collegamento, evidenziarlo, fare clic su ModifyImposta l'elenco a discesa su None, fare clic Applyprima e poi Okay.


1
Come mai erano richiesti entrambi?
Jonathan Benn,

1
Quando associo la stessa scorciatoia a entrambe le cose che succede, passa dall'eliminazione solo della prima riga delle linee selezionate all'eliminazione solo della linea su cui si trovava il cursore. (Ho usato Ctrl + Maiusc + D, quindi non mi dovevo preoccupare del duplicato della selezione.)
jinglesthula,

14

Macro è una buona scelta qui. Sebbene la macro che mi è venuta con un po 'di ritardo (puoi vedere che potrebbe esserci un ritardo di un quarto di secondo tra l'hit CTRL-D e le linee che vengono eliminate su una grande selezione) funziona alla grande sia su una singola linea che su più righe e copre vari casi difficili.

Quindi, la mia macro è:

CTRL + J : se vengono selezionate più righe, vengono unite in un'unica riga
HOME , il normale pulsante HOME. Porta il cursore all'inizio di una riga (o all'inizio di una riga unita)
MAIUSC + FINE : seleziona la riga fino alla fine a partire dalla posizione del cursore
CTRL + MAIUSC + L : elimina l'intera riga

Questo insieme di azioni copre tutti i possibili scenari di eliminazione della linea che ho riscontrato finora durante l'uso intenso di Notepad ++.


So di essere in ritardo di qualche anno, ma questa macro non funzionerebbe altrettanto bene solo con CANC invece di CTRL + MAIUSC + L come l'ultimo comando? Se ti capisco correttamente, hai già contrassegnato tutto il testo che desideri eliminare con i primi tre comandi.
Bjarte Aune Olsen,

9

C'è un collegamento in Notepad ++ per eliminare una riga: Ctrl+ Shift+ L.. ma questo eliminerà solo una singola riga.

Anche se sono selezionate più linee, eliminerà solo la linea in cui si trova il cursore e non le linee evidenziate.

Quindi, il modo più semplice per eliminare una serie di linee selezionate, è necessario registrare una macro con queste combinazioni di tasti di scelta rapida:

Ctrl+J

seguito da

Ctrl+ Shift+L

Questo prima JOINle linee selezionate e poi DELETEl'intera linea.

È meglio che usare una combinazione CUTe un DELETEapproccio come menzionato sopra (cosa che ho provato) perché in alcuni casi eliminerà anche le linee non selezionate.


4

Come alternativa non macro alla risposta di @Jan Domozilov, ho seguito questi passaggi (usando Notepad ++ v6.5.1 (UNICODE)):

  1. Nel menu Impostazioni , selezionare Shortcut Mapper.
  2. Nella scheda Menu principale , impostare Join Lines(riga 26) su Ctrl+Alt+D.
  3. Fai clic sulla scheda dei comandi di Scintilla .
  4. Impostare SCI_LINEDELETE(riga 90) su Ctrl+D.
  5. Chiudi la finestra.

Ciò consente di eseguire il comportamento desiderato con una piccola modifica. Si seleziona il testo, si esegue il comando Unisci linee con Ctrl+Alt+D, si rilascia solo il Alttasto e si preme di Dnuovo per eliminare il testo.


0

Un altro modo più semplice è usare il backspacepulsante dopo la selezione, questo sostituirà la linea selezionata con il backspace.


-1

È possibile utilizzare CTRL + CANC per eliminare l'intero contenuto di una riga. Quindi tutto ciò che devi fare è utilizzare nuovamente ELIMINA per rimuovere il feed di riga. Se questo non è abbastanza per te, puoi creare una macro per fare entrambe le azioni.

Poiché sembra aver smesso di funzionare nell'ultima versione, ti consiglio di utilizzare l'approccio Macro per l'intero problema. Vai su Macro, "Avvia registrazione", quindi premi "Home", "Maiusc" + "FINE", "ELIMINA", "ELIMINA", quindi vai su Macro e ferma la tua Macro. Successivamente, vai su Salva macro registrata corrente "e scegli un nome e un collegamento (ad esempio CTRL + CANC). In questo modo riattiva il collegamento per la riga di eliminazione.


Ctrl+Deletenon elimina le righe in Notepad ++ per me (non ho rimappato nessun tasto diverso da Ctrl+D).
Matt Ball,

Quale versione di Notepad ++ stai usando? Funziona su Notepad ++ 5.8.2 sotto Win7
private_meta

5.8.7 (l'ultima versione) su Win7 x64. Volevi dire Ctrl+Backspace? (Anche per me non funziona)
Matt Ball

Ah, l'ho appena provato con 5.8.7 e non ha funzionato neanche, fammi vedere
private_meta

Ho aggiornato la mia risposta
private_meta il

-1

CTRL + MAIUSC + CANC per me funziona benissimo per eliminare l'intera riga singola.


2
L'OP vuole eliminare tutte le righe che fanno parte del testo attualmente selezionato . La scorciatoia elimina solo la prima riga di una selezione.
nixda,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.