Edytor nie pozwala edytować treści oraz poruszać się po niej

2

@TomRiddle: edytor jest zabugowany — patrz na gifa.

co do cholery.gif

Wszedłem w edycję tego posta, aby zmienić treść ostatniego zdania. Piszę tekst, a edytor mi go usuwa i przywraca poprzednią wartość. Jakby tego było mało, przesuwam kursor strzałkami w bok, a on skacze w jakieś randomowe miejsca w tym paragrafie.

Na początku gifa jest problem z przesuwaniem kursora — strzałkami przesuwa się co kilkanaście znaków, chcę go umieścić na końcu tekstu ale się nie da, Ctrl+End nic nie daje. Zacząłem myszą kombinować próbując przeniejść go na koniec tekstu oraz zaznaczyć końcówkę, aby ją usunąć, ale zaznacza tekst w środku zdania, nie na końcu. Usunąłem więc trochę znaków ze środka zdania i jakoś się udało umieścić kursor na końcu tekstu. W późniejszej części widać problem z wywalaniem moich zmian i zastępowanie ich poprzednią treścią.

Sugeruję przeglądnąć źródła tego edytora i wywalić wszystkie funky-automatyczne operacje, bo edytor takie cuda sam robi i jest tak niestabilny, że momentami nie daje się go w ogóle używać. Wywalić poprawianie wcięć bo sie sypie i wywalić domykanie nawiasów, bo nie pozwala normalnie linków tworzyć i ciągle muszę wracać do edycji posta, aby usunąć te nadmiarowe. :/

2

@furious programming: Dzięki wielkie za zgłoszenie. Oczywiście masz rację, że to co widzisz to bugi; (to nie tak jak ktoś zgłasza feature jako bug, także dzięki za to).

Problem ze skakaniem zaznaczenia ze strzałkami wydaje mi się że znalazłem i naprawiłem, będzie w następnym release'ie.

Co do "usuwania treści", to to ja rozumiem co tam się dzieje. Wcześniej edytor był zwykłym <textarea/>, więc nie miał żadnej logiki. Teraz edytor jest napisany w JS, i różne rzeczy tam się dzieją. Jedną z rzecz która się dzieje, jest zapamiętywanie historii. Jak był zwykły <textarea/>, to mogliśmy najwyżej zrobić Ctrl+Z raz, tak jak w notatniku; zależnie od przeglądarki. Nowa wersja edytora pamięta różne wersje, przez co można robić Ctrl+Z właściwie do początku pisania posta.

Teraz, odnośnie tego że edytor jest w JS; czasem w edytorze lecą wyjątki, głównie wtedy kiedy robimy coś czego teoretycznie powinno się nię robić - kiedy poleci niezłapany wyjątek, normalnie edytor by zcrashował, potencjalnie psując Ci post. Zamiast tego jest handler wysokiego poziomu, który w przypadku wyjątku przywraca poprzedni stan z historii, tak żeby zachować resztę postu.

To co widać na gifie, to zrobiłeś coś normalnego; co przez buga (mój błąd), spowodowało wyjątek i edytor by zcrashował. Zamiast tego cofnięto poprzednią wersję z historii. To czemu wyjątek poleciał wydaje mi się że już naprawiłem,, będzie w kolejnym release'ie.

0
TomRiddle napisał(a):

Teraz, odnośnie tego że edytor jest w JS; czasem w edytorze lecą wyjątki, głównie wtedy kiedy robimy coś czego teoretycznie powinno się nię robić - kiedy poleci niezłapany wyjątek, normalnie edytor by zcrashował, potencjalnie psując Ci post. Zamiast tego jest handler wysokiego poziomu, który w przypadku wyjątku przywraca poprzedni stan z historii, tak żeby zachować resztę postu.

Podoba mi się takie podejście, z przywracaniem wersji. Mimo nieintuicyjności można się zgodzić, że co najmniej jedna wersja wpisu nie jest tracona. Gorzej, że nowy tekst nie został nigdzie zapamiętany.

0
TomRiddle napisał(a):
Silv napisał(a):
TomRiddle napisał(a):

Teraz, odnośnie tego że edytor jest w JS; czasem w edytorze lecą wyjątki, głównie wtedy kiedy robimy coś czego teoretycznie powinno się nię robić - kiedy poleci niezłapany wyjątek, normalnie edytor by zcrashował, potencjalnie psując Ci post. Zamiast tego jest handler wysokiego poziomu, który w przypadku wyjątku przywraca poprzedni stan z historii, tak żeby zachować resztę postu.

Podoba mi się takie podejście, z przywracaniem wersji. Mimo nieintuicyjności można się zgodzić, że co najmniej jedna wersja wpisu nie jest tracona. Gorzej, że nowy tekst nie został nigdzie zapamiętany.

Byłby, ale wyjątek poleciał wcześniej.

Tak ogólnie, poza tym problemem: myślę, że to jest jakiś problem podejścia "fail-safe". Jak coś się psuje, użytkownik by design powinien o tym jak najmniej wiedzieć. Czasem wielki czerwony pop-up z napisem "WYJĄTEK, ZRESTARTUJ URZĄDZENIE" jest lepszy. <myśli>

0

Skoro są wyjątki, które powodują coś widzialnego dla użytkownika (a są, jak widać po tym problemie), to można się nad takim komunikatem zastanowić, tak.


PS @furious programming, co myślisz?

0

Hm, nie rozumiem. Skoro Ty i/lub twórca jakiejś biblioteki daliście wyjątek, to co najmniej jeden z Was założył, że sytuacja, przed którą wyjątek chroni, zdarzy się za x czasu (gdzie x dąży do nieskończoności).


UPDATE Inaczej mówiąc: że na pewno się zdarzy, tylko nie wiadomo, kiedy.

1

@furious programming: Wszedł release, wersja 1.10.25.

Powinny bugi które zgłosiłeś być naprawione.

furious programming napisał(a):

Sugeruję przeglądnąć źródła tego edytora i wywalić wszystkie funky-automatyczne operacje, bo edytor takie cuda sam robi i jest tak niestabilny, że momentami nie daje się go w ogóle używać. Wywalić poprawianie wcięć bo sie sypie i wywalić domykanie nawiasów, bo nie pozwala normalnie linków tworzyć i ciągle muszę wracać do edycji posta, aby usunąć te nadmiarowe. :/

Jedyna taka funkcja "funky-automatyczne" to w sumie jest to automatyczne zamykanie cudzysłowów i nawiasów. Reszta się dzieje albo na skroty klawiszowe albo na koemndy.

1
TomRiddle napisał(a):

Jedyna taka funkcja "funky-automatyczne" to w sumie jest to automatyczne zamykanie cudzysłowów i nawiasów.

Wkurza mnie ta funkcja i przeszkadza w pisaniu treści. Nigdy nie używam automatycznego domykania, więc ciągle muszę poprawiać to co mi edytor naprodukuje. To powinno być włączane opcjonalnie, podobnie jak inne funkcje automatyzujące (tak jak w IDE).

2
furious programming napisał(a):
TomRiddle napisał(a):

Jedyna taka funkcja "funky-automatyczne" to w sumie jest to automatyczne zamykanie cudzysłowów i nawiasów.

Wkurza mnie ta funkcja i przeszkadza w pisaniu treści. Nigdy nie używam automatycznego domykania, więc ciągle muszę poprawiać to co mi edytor naprodukuje. To powinno być włączane opcjonalnie, podobnie jak inne funkcje automatyzujące (tak jak w IDE).

A mógłbyś opisać use-case?

Chciałbym poznać Twoją opinię, czemu to przeszkadza? Być może jak jest jakiś use'case to to ogarniemy zamiast wywalać cały feature.

Jak usilnie zostaniesz przy swoim zdaniu to możemy to wycofać albo sparametryzować, ale doceniłbym jeśli byś się wypowiedział

2

Dodać pozycję do ustawień edytora na stronie ustawień profilowych i dać możliwość m.in. wyboru czy nawiasy mają być usupełnione, czy wcięcia mają być automatycznie usuwane, dać opcję do wyboru rozmiaru fontu itd. itp.

Całe formatowanie swoich postów wykonuję z poziomu klawiatury. Jeśli mam tekst, ale chcę z niego zrobić link, to ustawiam kursor przed tym tekstem, wpisuję [ i edytor od raz uwstawia mi ] obok, więc muszę go usuwać i wstawiać w odpowiednim miejscu. Nawet w poprzednim zdaniu nie mogłem normalnie wpisać [ w backtickach, bo mi edytor dodawał nawias zamykający.

Wkurzający jest i nie pozwala normalnie pisać treści.

1
furious programming napisał(a):

Dodać pozycję do ustawień edytora na stronie ustawień profilowych i dać możliwość m.in. wyboru czy nawiasy mają być usupełnione, czy wcięcia mają być automatycznie usuwane, dać opcję do wyboru rozmiaru fontu itd. itp.

Całe formatowanie swoich postów wykonuję z poziomu klawiatury. Jeśli mam tekst, ale chcę z niego zrobić link, to ustawiam kursor przed tym tekstem, wpisuję [ i edytor od raz uwstawia mi ] obok, więc muszę go usuwać i wstawiać w odpowiednim miejscu. Nawet w poprzednim zdaniu nie mogłem normalnie wpisać [ w backtickach, bo mi edytor dodawał nawias zamykający.

Wkurzający jest i nie pozwala normalnie pisać treści.

Okej, rozumiem.

Teraz zawsze siedzę na klawiaturze i na myszce, ale potrafię sobie wyobrazić że gdybym siedział na lapku, to też wolałbym robić wszystko z klawiatury, ze strzałkami, Ctrl, Shift, etc.

Więc mam takie propozycje, co na nie powiesz:

  • Zamiast robić tak, że teraz kliknięcie [ otwiera [] prawie wszędzie, możemy zrobić coś w stylu że otwiera tylko jeśli mamy kursor na końcu edytora albo przed białym znakiem, czyli możemy zrobić tak że jak masz cursor przed literą, typu |link, i klikniesz [, to się nie otworzy (zrobi się [|link).
  • Pomysł drugi, rozumiem że cały pomysł to jest zamienić jakieś słowo na link. Czy nie wystarczy zaznaczyć jakiegoś słowa/ciągu i użyć Ctrl+Shift+V, że zamienić go w link? (zakładając że masz link w schowku)?

Daj znać czy takie rozwiązania byłyby jakkolwiek akceptowalne?

Jeśli to nie są pełnoprawne rozwiązania które byś zaakceptował, czy uznałbyś je jako krok w dobrą stronę?

0

Przed chwilą wpier*****o mi artykuł, który pisałem z godzinę. Edytor do tego stopnia zgłupiał, że usuwał mi fragmenty treści, nie pozwalał normalnie pisać bo przywracał mi poprzedni tekst, Ctrl+Z robiło jakieś cuda, a najgorsze jest to, że nie dało się nijak skopiować treści — nie działało ani Ctrl+C, ani opcja w menu kontekstowym przeglądarki. Wysłałem więc wpis, aby się dodał, bo pomyślałem, że wejdę do edycji i skopiuję treść, a resztę dopiszę w notatniku — no za cholerę! Nawet po wejściu do edycji nie dało się treści skopiować!

Odechciało mi się pisania czegokolwiek — godzina w dupę… :|

0

Może w takim razie wyłączyć to Ctrl+Z, bo widzę że sprawia więcej problemów niż przynosi korzyści.

1
furious programming napisał(a):

Przed chwilą wpier*****o mi artykuł, który pisałem z godzinę. Edytor do tego stopnia zgłupiał, że usuwał mi fragmenty treści, nie pozwalał normalnie pisać bo przywracał mi poprzedni tekst,

No tak się dzieje kiedy lecą wyjątki, żeby nie dopuścić edytor do crashowania. Widocznie znalazłeś kolejnego buga którego nie naprawiłem.

Ctrl+Z robiło jakieś cuda, a najgorsze jest to, że nie dało się nijak skopiować treści — nie działało ani Ctrl+C, ani opcja w menu kontekstowym przeglądarki. Wysłałem więc wpis, aby się dodał, bo pomyślałem, że wejdę do edycji i skopiuję treść, a resztę dopiszę w notatniku — no za cholerę! Nawet po wejściu do edycji nie dało się treści skopiować!

Masz linka do tego arta jeszcze gdzieś? Być może dodałeś treść Markdown'ową której nie przewidziałem? Być może używasz jakichś innych, bardziej niestandardowych niż myślniki zamiast minusów?

@furious programming: Postaram się zrobić wszystko co mogę żeby oszczędzić Ci dalszego wkurwu, tylko potrzebuję kapkę pomocy, bo mi się nigdy tak nie stało, tak jak Tobie.

2
TomRiddle napisał(a):

Masz linka do tego arta jeszcze gdzieś? Być może dodałeś treść Markdown'ową której nie przewidziałem?

Nie mam linku, bo wpisu nie dokończyłem z powodu bugów edytora, a fragment który wysłałem w celu prób skopiowania treści ostatecznie usunąłem — bo ani nie mogłem skopiować treści, ani nie mogłem dalej go pisać, bo edytor mi to uniemożliwiał.

Być może używasz jakichś innych, bardziej niestandardowych niż myślniki zamiast minusów?

Zwykle do pisania używam znaku pełnej pauzy, czyli . Czasem też używam znaków zero width space, aby odsunąć tekst od poziomej linii, bo od lat nie mogę się doprosić o naprawienie marginów i paddingów w CSS-ach. W tym wpisie użyłem tych zerowych spacji, ale po przejściu do zakładki **Podgląd` zauważyłem, ża na blogu pod liniami jest więcej miejsca i mogłem te znaki usunąć. Tzn. nie mogłem, bo edytor się wysypał.

We wpisie nie było dziwactw markdownowych, tylko to co poniżej:

  • zwykłe akapity tekstu,
  • nagłówki zrobione za pomocą #### **tu treść nagłówka**,
  • linki wstawione w treści w formie **[`nazwa`](adres)**, bo to linki do elementów w dokumentacji SDL-a,
  • poziomie linie robione za pomocą ____,
  • kilka skrawków kodu pascalowego, w znacznikach dla kodu.

Postaram się zrobić wszystko co mogę żeby oszczędzić Ci dalszego wkurwu, tylko potrzebuję kapkę pomocy, bo mi się nigdy tak nie stało, tak jak Tobie.

Mam na mikroblogach napisanych mnóstwo długich wpisów — jesteś modkiem, więc weź jakikolwiek mój długi wpis, który zawiera sporo formatowania, wejdź do jego edycji i spróbuj coś zmieniać. Może w ten sposób znajdziesz coś przydatnego.

1 użytkowników online, w tym zalogowanych: 0, gości: 1