iA Writer i rozwiązanie braku Share Sheet za pomocą Shortcuts

14/05/2020, 12:05 · · · 0

iA Writer to nadal bardzo fajny edytor tekstu, szczególnie dla osób ceniących sobie minimalizm i pisanie w Markdown. Niestety, jego wersja dla iOS-a nie ma jednej funkcji, którą posiada Ulysses – możliwość przesłania np. linka do artykułu za pomocą Share Sheet.

Często, jak przemierzam internety w poszukiwaniu ciekawych tematów, to nie chcę przerywać swojego flow i jeśli znajdę coś ciekawego, na temat czego chcę napisać parę słów, to po prostu klikam w Safari lub Reederze strzałkę współdzielenia i tam z listy wybieram Ulysses. Automatycznie tworzy mi to nowy wpis, z linkiem do artykułu oraz jeśli zaznaczę jakiś tekst, to ten również się tam znajdzie. Proste i piękne. Alternatywnie korzystam z Shortcuta, którego stworzyłem kilka lat temu i który nadal działa.

iA Writer niestety takie funkcji nie posiada.

Pozostało mi więc skorzystanie z URL Schemes, które iA Writer oferuje domyślnie i które najpierw trzeba aktywować w preferencjach aplikacji.

Link Post w iA Writer

Oto przykładowy Shortcut do tworzenia tzw. link posts w iA Writer, z których regularnie korzystam. Całość można oczywiście dostosować do własnych potrzeb, aby przekazywało i formatowało dane dokładnie tak, jak ktoś sobie tego życzy.

  1. Link do iA Writer akceptuje tylko adresy URL.
  2. W drugim kroku korzystam z funkcji Get Article, która pobiera metadane z przekazanego adresu.
  3. Następnie wyciągam tytuł strony z funkcji Get Article.
  4. Teraz zmieniam to, jak tytuł jest formatowany, za pomocą funkcji Capitalise with Title Case w polu Text.
  5. Pozostaje już tylko przypisać powyższe Updated Text do zmiennej, aby zachować tę informację na później.
  6. W tym kroku pobieram zawartość schowka systemowego. Ten Shortcut zakłada, że przed jego uruchomieniem kopiuję jakiś wybrany fragment ze strony WWW. Mógłbym (i powinienem) tutaj sprawdzać, czy schowek jest pusty, czy nie, ale to Shortcut dla mnie, więc tego nie dodałem.
  7. Następnie konwertuję zawartość schowka do Markdown.
  8. W ostatnim kroku tej sekcji przerzucam tekst sformatowany jako Markdown ponownie do schowka systemowego.

  1. Teraz czas na stworzenie szablonu wpisu, który chcę stworzyć. Korzystam z funkcji Text, w której umieszczam 3 linijki. Pierwsza to # [LinkedURLTitle](Shorcut Input)# tworzy nagłówek, który będzie tytułem, LinkedURLTitle to zmienna z tytułem strony, a Shortcut Input to URL strony przekazany do tego Shortcut. W drugiej linijce korzystam z funkcji Author, która wyciąga autora artykułu za pomocą funkcji Get Article. W trzeciej wklejam zawartość schowka, która jest już w formacie Markdown.
  2. Teraz trzeba całość przekonwertować tak, aby móc przekazać te informacje w URL-u. Do tego celu korzystam z funkcji URL Encode i jako zmienną przekazuję powyższy Text.
  3. Tworzę zmienną encodedText i przypisuję do niej zakodowany tekst w poprzedniego kroku.
  4. Ponownie korzystam z Text, aby sformatować datę. To wykorzystamy do nazwy pliku. Korzystam z formatu RRMMDD-HHMMSS, aby nie było sytuacji, w której dwa pliki mogą mieć tą samą nazwę lub dziwne przedrostki, które by wyróżniały dwa tam samo nazwane pliki.
  5. Powyższą datę, która będzie służyła jako nazwa pliku, zapisuję w do formatu, którego będzie można przekazać w URL-u, za pomocą funkcji URL Encode, z której korzystałem już wcześniej do zapisania treści wpisu.
    14. Zapisuję nazwę pliku do zmiennej encodedPath.
  6. Na koniec pozostaje złożenie w całość URL Scheme, który przyjął następującą formę: iawriter://new?text=[encodedText]&path=/[encodedPath].md
  7. Pozostaje teraz skorzystać z funkcji Open URL, aby otworzyć stworzony URL.

Ten Shortcut otworzy teraz iA Writera, stworzy nowy dokument z odpowiednio nadaną nazwą i rozszerzeniem .md (od Markdown) i wklei do niego tytuł, autora oraz treść artykułu.

Opcjonalnie można jeszcze do URL-a dopisać &edit=1, co spowoduje wysunięcie się klawiatury ekranowej, aby można było go od razu edytować.

W sumie proste.

0

Wojtek Pietrusiewicz

Wydawca, fotograf, podróżnik, podcaster – niekoniecznie w tej kolejności. Lubię espresso, mechaniczne zegarki, mechaniczne klawiatury i zwinne samochody.