Script om tags rond tekst te zetten?
geplaatst: 27 juli 2018 - 00:44
Ik ben aan het kijken of ik het schrijven van het nieuws op MacFreak nog beter kan stroomlijnen, en daarbij zou een script (AppleScript?) handig kunnen zijn dat geselecteerde tekst tussen forum-tags zet.

Ik ben nu aan het experimenteren met BetterTouchTool omdat ik dan knopjes in de Touch Bar zou kunnen zetten, en dat accepteert zowel AppleScript als Shell scripts. Ik hoop nu dat er hier iemand weet welk script je hiervoor zou kunnen gebruiken (zelf zoeken op het internet heeft tot nu toe jammer genoeg niets opgeleverd).

Voor het geval dat het niet duidelijk is wat ik zoek, als ik een woord selecteer zou het script er de tags omheen moeten kunnen zetten. Als ik het woord "test" zou selecteren en dat vet zou willen tonen, dan zou het script daar dan het volgende van moeten maken:
[b]test[/b]
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #1 geplaatst: 27 juli 2018 - 06:01
Wat dacht je van het leren van Markdown markup language.

Daarmee kan je eenvoudig teksten ten behoeve van websites schrijven.

Markdown, de basis
MutiMarkdown (uitgebreide versie van MD)

Je schrijft daarmee goed leesbare teksten en met een druk op een knop heb je volledige HTML code die hier kan plaatsen.
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #2 geplaatst: 27 juli 2018 - 09:24
@ Feek: het gaat niet om de vorm waarin het geschreven wordt, maar de snelheid en het gemak.

Ik wil aan de geschreven tekst achteraf dingen toevoegen als vet, cursief, links etc. Of dat in HTML, Markdown of forum code is maakt niet echt uit, wat ik zoek is een script dat bij geselecteerde tekst de code in één handeling toegevoegd.

Dat kan ik nu doen met de editor gaan dit forum zelf, maar dat is volgens mij nog steeds omslachtiger dan de oplossing die ik zoek.

Het gaat dus vooral om iets wat al werkt een stuk efficiënter maken.
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #3 geplaatst: 27 juli 2018 - 09:27
Kijk nou maar eens naar MD, want dat werkt echt voor dit soort dingen al een tierelier! Snel en doeltreffend.
Al je bv in TextMate / Sublime text CMD-i intypt bij geselecteerde tekst wordt het automatisch cursief (in MD opmaak), CMD-b voor Bold enz enz

[lees verder op MacFreak](https://macfreak.nl) => <a href="https://macfreak.nl">lees verder op MacFreak</a>
En als je bv iA writer gebruikt, ziet het er ook nog goed uit. iA writer kan ook exporteren naar html.
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #4 geplaatst: 27 juli 2018 - 10:03
Heb iA writer getest en als ik daar iets in bold wil zetten dan krijg ik twee asterisken rond de tekst, italics geeft één asterisk.

Als ik dat naar HTML exporteer zie ik inderdaad het effect, maar dat op MacFreak krijgen lijkt niet te doen, dan moet eerst de HTML door HTML-tags ingesloten worden, en worden vervolgens alle forumcode zichtbaar.

Misschien zit ik er helemaal naast, maar de eerste testen hiermee zijn in ieder geval niet hoopgevend.

@ Feek: heb je dit zelf hier op het forum getest, en ook in combinatie met forumcode? Misschien is het een oplossing, maar op het moment lijkt het van niet...
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #5 geplaatst: 27 juli 2018 - 10:41
Ok, duidelijk. Je bedoelt dus de forum tags zoals ‘[bold] ‘.
Ik dacht pure html, voor bv nieuwsberichten. En ik ging er van uit dat je als beheerder toegang had om echte html in berichten te plaatsen.
Ja, dan moet je scriptjes gaan schrijven of gebruik maken van Keyboard Meastro. Hiermee heb ik bv een macro die voor mij op dit forum externe linkjes genereert
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #6 geplaatst: 27 juli 2018 - 11:05
Een andere optie is TextSoap. Daarin kun je via onder andere Regular Expression-commando's (RegEx) tekst wijzigen. Aan de commando's die je maakt kun je dan weer toetsenbordcommando toevoegen (die je tenslotte via BetterTouchTool weer zou kunnen aanroepen).
Ik heb deze optie zelf net even zitten testen en bijvoorbeeld de tags voor deze dikke tekst en de link hierboven later toegevoegd.
Je moet alleen even in de RegEx duiken, maar indien nodig kan ik daar ook mee helpen.

Kees
Laatst bewerkt op: 27 juli 2018 - 11:59 door KvB
geplaatst door: KvB
antw: Script om tags rond tekst te zetten?
reactie #7 geplaatst: 27 juli 2018 - 11:46
Interssant, volgens mij gaan we nu de kant op die ik zoek...  ;)

@ Feek: grappig genoeg gebruik ik tot nu toe ook Keyboard Maestro daarvoor (al jaren een enthousiaste gebruiker), maar nu ik (eindelijk) een MacBook Pro met Touch Bar heb zou ik graag willen dat ik BetterTouchTool daarvoor zou kunnen gebruiken.

Ben dan ook meteen nieuwsgierig welke macro jij gebruikt, misschien dat die voor mij ook handig is.

@ Kees: ziet er uit als RegEx al een stuk dichterbij komt, maar inderdaad, dat betekent even daar diep induiken. Maar ik blijf me afvragen of er geen AppleScript bestaat dat code voor en na geselecteerde tekst kan toevoegen. Dat klinkt zo eenvoudig, of is het dat helemaal niet?
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #8 geplaatst: 27 juli 2018 - 12:08
@ Robert
Het 'probleem' zit er - naar mijn idee - in dat je van te voren nooit weet om welke tekst je de tags wil gaan plaatsen. De ene keer is het dit woord, de andere keer een andere. Hierdoor wordt het 'simpel' selecteren van tekst en er iets voor en achter plaatsen lastig: de originele tekst moet blijven zoals die is. RegEx kan dit wel.
Ik heb ook even zitten kijken of je via het sed-commando in de Terminal (al dan niet met Automator) wat kunt doen, maar tot nog toe heb ik daar geen succes mee. (Zelf nog niet zo'n ster met sed. :wink: )
geplaatst door: KvB
antw: Script om tags rond tekst te zetten?
reactie #9 geplaatst: 27 juli 2018 - 12:08
Ik heb zelf (nog) geen MacBook Pro met Touch Bar, maar het ziet er inderdaad naar uit dat BetterTouchTool zou moeten kunnen waar jij naar op zoek bent.

https://lifehacker.com/customize-your-macs-touch-bar-with-bettertouchtool-1827125801

Er is ook een forum waar je vragen kunt stellen: https://community.folivora.ai
geplaatst door: puk1980
Ik luister nu naar Melt Yourself Down - 100% YES.
antw: Script om tags rond tekst te zetten?
reactie #10 geplaatst: 27 juli 2018 - 12:40
fout, ik dacht dat ik Keyboard Maestro daarvoor gebruikte, maar voor de url link gebruik ik toevallig Typinator, met de volgende snippet:

[url={clip}]{{?Titel URL}}{^}[/url]

waarbij de url uit het clipboard wordt gehaald en gevraagd wordt naar de titel van de tekst.

Maar deze is ook zo om te zetten naar Keyboard Maestro.
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #11 geplaatst: 27 juli 2018 - 12:53
Het is me zelf net gelukt dankzij deze pagina. Daar  vraagt iemand om een vergelijkbare oplossing, maar dan voor TextWrangler.

Heb hetzelfde geprobeerd voor TextEdit (werkte niet), maar in BBEdit (het 'grote broertje' van TextWrangler) blijkt het als een zonnetje te werken.

Het script dat menu werkt om een tekst vet te zetten is het volgende:
tell application "BBEdit"
tell front text window's text
set selectedText to contents of selection
if selectedText ≠ "" then
set newText to "[b]" & selectedText & "[/b]"
set text of selection to newText
end if
end tell
end tell

In dit geval gaat het om forum-code, maar dit is natuurlijk ook te gebruiken voor HTML of wat dan ook.

Net getest via BetterTouchTool en het werkt als een zonnetje, dus die app gaat binnenkort ook gekocht worden...  ;)

Voor mij is het voordeel vooral dat ik zo langzamerhand begin om te komen in de sneltoetsen, en daardoor af en toe door de bomen het bos niet meer zie. BetterTouchTool zet nu visuele knopjes in de Touch Bar, wat werkt een stuk prettiger (ik houd niet van 'zwevende' paletten op het scherm, dat was waarschijnlijk de andere oplossing geweest).

Allemaal enorm bedankt voor de hulp, ik zag weer programma's voorbij komen die ik nog niet kende (en verder ga uitproberen) en ben (zoals altijd) weer onder de indruk hoe snel er hulp van niveau te vinden is hier op MacFreak..!   :thumbs-up:
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #12 geplaatst: 27 juli 2018 - 13:40
Hmm, iets te snel geweest...

BBEdit blijkt onder andere geen AutoCorrect te ondersteunen en de Spelling Checker is ook verre van ideaal.

Iemand een idee hoe bovenstaand script in TextEdit zou kunnen werken? (of in een andere app, maar dan wel een die ook alle functies van macOS ondersteunt).
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #14 geplaatst: 27 juli 2018 - 14:11

Iemand een idee hoe bovenstaand script in TextEdit zou kunnen werken?

TextEdit is inderdaad ook Scriptable.
https://gist.github.com/benwaldie/6227266
geplaatst door: puk1980
Ik luister nu naar Melt Yourself Down - 100% YES.
antw: Script om tags rond tekst te zetten?
reactie #15 geplaatst: 27 juli 2018 - 14:13
Om het nog eenvoudiger te maken :) Good old TextMate, mijn texteditor sinds mijn eerste mac ondersteunt dit zo out-of-the-box....... SublimeText waarschijnlijk ook...

gewoon CTR-SHIFT-W drukken en dan de tag code intypen en done :)


geplaatst door: Feek
antw: Script om tags rond text te zetten?
reactie #16 geplaatst: 27 juli 2018 - 14:19
En om het dan helemaal compleet te maken..... hier mijn Keyboard Maestro macro.
Met deze macro kan ze vanuit Safari / Macfreak forum de tekst bewerken in TextMate. De tekst uit het invoerveld voor de reacties wordt in TExtMate geladen. Daar kan je het bewerken. Zodra je Textmate verlaat (na bewaren) staat de bewerkte tekt weer in het invulveld van Safari. De macro onthoudt waar je vandaan komt.....
Oh zo fijn de hulptooltjes :)

geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #17 geplaatst: 27 juli 2018 - 14:31
Zo werkt het:

geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #18 geplaatst: 27 juli 2018 - 14:52
mmmm, was te snel over TextMate, vergeten dat het vierkante haken zijn op het forum :(
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #19 geplaatst: 27 juli 2018 - 15:04
Wel leuk zo’n screen recording, feek. :smile:

Met welke tool heb jij daar een animated gif van gemaakt?

(Dat lukt met ffmpeg en convert van ImageMagick zag ik, maar dat kan vast ook sneller...)
geplaatst door: puk1980
Ik luister nu naar Melt Yourself Down - 100% YES.
antw: Script om tags rond tekst te zetten?
reactie #20 geplaatst: 27 juli 2018 - 15:11
En volgens mij ondersteunt TextMate ook geen AutoCorrect etc., dus zou het sowieso al afvallen (want dan werkt BBEdit net zo goed).

Is hier iemand slim genoeg (eventueel met behulp van link van puk1980) om het voor elkaar te krijgen in TextEdit? Mijn pogingen tot nu toe zijn niet erg vruchtbaar...  :(
geplaatst door: Robert
antw: Script om tags rond tekst te zetten?
reactie #21 geplaatst: 27 juli 2018 - 15:12
OK, mijn eer te na, hierbij de snippet voor Textmate om automatisch forum tags te plaatsen:

[${1:p}]${2:$TM_SELECTED_TEXT}[/${1/\s.*//}]
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #22 geplaatst: 27 juli 2018 - 15:13
@Robert, het werkt in TextMate niet via autocorrect, maar out of the box met een shortcode.
geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #23 geplaatst: 27 juli 2018 - 15:18
Het werkt :)

geplaatst door: Feek
antw: Script om tags rond tekst te zetten?
reactie #24 geplaatst: 27 juli 2018 - 15:28
@puk1980 daar gebruik ik de Pro versie van Droplr voor. Ooit een lifetime subscription voor $25 op de kop kunnen tikken via StackSocial :)
geplaatst door: Feek