Tymczasowe ukrycie czesci linii tekstu

English main discussion
Post Reply
  • Author
  • Message
Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Tymczasowe ukrycie czesci linii tekstu

Post by sexy96 »

Mam taki problem do rozwiązania:

Zaznaczam w pierwszej linii zwrot "Edit"

1.EditPadPro
2.EditPlus
3.EmEditor
4.Notepad
5.Notepad++
6.SynWrite
7.TextPad

Automatycznie zaznaczy się ten zwrot w linii 2 i 3.

Teraz chciałbym poprzez kliknięcie na ikonę w Toolbar,
ukryć pozostałe linie (nie posiadające tego zwrotu),
poprawić tekst w linii 1 i 2, a następnie
poprzez kliknięcie na ikonę w Toolbar,
przywrócić ukryte linie.

W edycji napisów do filmów (kilka tysięcy linii)
ukrycie zbędnych linii byłoby bardzo pomocne.
Czy jest to wykonalne?

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96
Skrypt: LinesHideShow.js.

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

"Ukryj linie" Call("Scripts::Main", 1, "LinesHideShow.js") Icon("%a\AkelFiles\Plugs\Format.dll", 0)
"Ukryj linie, które zawierają tekst" Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=1 -text="world" -flag="i"') Icon("%a\AkelFiles\Plugs\Format.dll", 0)
"Ukryj linie, które nie zawierają tekstu" Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=2 -text="world" -flag="i"') Icon("%a\AkelFiles\Plugs\Format.dll", 0)
"Pokaż wszystko" Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=0') Icon("%a\AkelFiles\Plugs\Format.dll", 0)

test:
linie1
linie2
linie3
linie4

Nie działają z -flag="i" oraz "w":
"Ukryj linie"
"Ukryj linie, które zawierają tekst"
"Ukryj linie, które nie zawierają tekstu"

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96
Jeśli chcesz, żeby był brany pod uwagę tekst zaznaczony w oknie edycji, to pomiń parametr -text lub podaj pusty -text="".

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

Mam tekst w jednej linii:
Ukryj linie1

Gdy zaznaczę "Ukryj" linia1 nadal pozostaje widoczna po kliknięciu na:
"Ukryj linie, które zawierają tekst" Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=1 -text="" -flag="i"') Icon("%a\AkelFiles\Plugs\Format.dll", 0)

to samo jest przy więcej liniach:
Ukryj linie1
Ukryj linie2
linia1 nadal pozostaje widoczna.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96
LinesHideShow.js wrote:You can not hide the first and last line in document.
Czyli nie można ukryć pierwszego i ostatniego wiersza.

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

Jaka, jest różnica w działaniu.
"Ukryj linie" Call("Scripts::Main", 1, "LinesHideShow.js") Icon("%a\AkelFiles\Plugs\Format.dll", 0)
"Ukryj linie, które zawierają tekst" Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=1 -text="" -flag="i"') Icon("%a\AkelFiles\Plugs\Format.dll", 0)

linie1
linie2
linie3
linie4

Jak zaznaczę całą pierwszą to znika linia 2
w obu przypadkach

Jak zaznaczę całą drugą to znikają linia 2 i 3
w obu przypadkach

czyli zawsze znikają 2 linie, zaznaczona i ta pod nią.
A ponieważ pierwsza jest nieusuwalna, to w pierwszym przypadku znika tylko ta pod nią.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96 wrote:Jaka, jest różnica w działaniu.

Code: Select all

Call("Scripts::Main", 1, "LinesHideShow.js", '-hide=1 -text="" -flag="i"')
Ukrywa wiersze zawierające zaznaczony tekst, przy czym wielkość liter jest ignorowana.
Czyli jeśli zaznaczysz "word", to zostaną ukryte wiersze zawierające "word", "Word", "WOrd", "WORd", "WORD", itd.

Code: Select all

Call("Scripts::Main", 1, "LinesHideShow.js")
1. Jeśli nie ma zaznaczenia - odkrywa wszystkie wiersze.
2. Jeśli jest zaznaczenie:
a. zaznaczenie jest od lewej do prawej (kursor jest na końcu zaznaczenia) - ukrywa wiersze zawierające zaznaczony tekst, wielkość liter ma znaczenie.
b. zaznaczenie jest od prawej do lewej (kursor jest na początku zaznaczenia) - ukrywa wiersze nie zawierające zaznaczonego tekstu, wielkość liter ma znaczenie.
Jak zaznaczę całą drugą to znikają linia 2 i 3
Prawdopodobnie zaznaczyłeś jeden wiersz wraz ze znakiem końca wiersza (EOL - end of line), czyli zaznaczenie obejmuje dwa wiersze.
Aby uniknąć zaznaczania wiersza z EOL, włącz funkcję SmartSel::NoSelEOL z pluginu SmartSel.

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

Po włączeniu funkcji SmartSel::NoSelEOL z pluginu SmartSel.

zaznaczam dowolny(z 4) zwrot "linie" (bez numeru na końcu).
linie1
linie2
linie3
linie4

Call("Scripts::Main", 1, "LinesHideShow.js"), nie reaguje w ogóle

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96
Prawdopodobnie zaznaczyłeś od prawej do lewej.

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

Chyba, tak.
To właściwie ten jeden
"Ukryj linie" Call("Scripts::Main", 1, "LinesHideShow.js") Icon("%a\AkelFiles\Plugs\Format.dll", 0)
załatwia wszystkie warianty.

Szkoda, że pierwsza i ostatnia linia nie jest brana pod uwagę.

Dzięki

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

sexy96
W nowej wersji skryptu można ukryć również ostatni wiersz dokumentu: http://akelpad.sourceforge.net/forum/vi ... 1516#31516

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

Dzięki.

Offline
Posts: 282
Joined: Thu Sep 10, 2015 9:53 am
Location: Deutschland

Post by sexy96 »

KDJ wrote: Aby uniknąć zaznaczania wiersza z EOL, włącz funkcję SmartSel::NoSelEOL z pluginu SmartSel.
Wtedy przestają działać
Command(4165) i Command(4167)
Post Reply