Ostatnio robiłem coś w pracy i było tak, w jednym miejscu miałem pewną listę (jako tekst ;-)), chciałem się upewnić, że nie ma w niej powtórzeń, a później zmienić ją w linię...
I miałem problem ;-)
Niby wiem, że kawałek z wyrzuceniem elementów z listy to:
- wrzuć listę do schowka
- w terminalu wykonaj:
pbpaste | sort | uniq | pbcopy - wklej do edytora
Zapewne da się też jednolinijkowcem zrobić zamianę listy w linię (oddzieloną spacjami)...
Ja postanowiłem pójść inną drogą ;-)
Zrobiłem sobie dziś workflow do Alfreda ;-) który po wpisaniu tx daje mi do wyboru kilka poleceń które jestem w stanie na tym tekście zrobić ;-)
Wszystkie operacje odbywają się na zawartości schowka i do tego jeśli jestem w jakimś edytorze to worklfow będzie próbował wkleić wynik do tego edytora ;-)
Ciągle się zastanawiam czy może macro do Keyboard Maestro by nie było lepsze, ale jeszcze nie wiem, choć pewnie zaraz zrobię ;-)
Sam skrypt, którego używam do konwersji jest napisany strasznie ;-)
Np. do pobrania zawartości schowka używam takiej linii ;-)
text="\n".join(os.popen("pbpaste").readlines()).strip()
czyli Python wykonuje pbpaste i czyta jego wynik ;-)
Gdyby kogoś interesowało to tutaj co robi która opcja ;-)
sort - sortuje zawartość schowka (line by line)
unique - usuwa powtórzone elementy (distinct? ;-)) ale bez sortowania
sort | unique - robi to co dwie poprzednie razem ;-)
list2line - zmienia listę w formie wielu linii w listę rzeczy oddzielonych spacją (pewnie dodam sobie jeszcze wersję z przecinkiem ;-))
line2list - odwrotne do list2line ;-) bierze listę oddzielonych spacją cosiów i zmienia w listę w liniach
add * in front - dodaje * na początku każdej z linii ;-)
remove after first space - usuwa wszystko co jest za pierwszą spacją (nie licząc spacji wiodących, które są i tak usuwane)
wrap with " - owija każdą linie w "" :-)
pretty json - zmienia "compacted" JSONa w takiego lepiej sformatowanego ;-)
Jakby ktoś chciał przygarnąć to tutaj można ;-)
Podobne postybeta
Nie wierze w polyglot developer, ale... ;-)
Za "mądry" system
Jak walczyć z gigantycznym kodem w Java'ie, część 1 ;-)
OOo2GD (OpenOffice.org2GoogleDocs) 1.2.2
OOo2GD 2.1.2 i malutka poprawka :-)
Brak komentarzy:
Prześlij komentarz