On 19 Sep 2020, at 3:48, James Reynolds wrote:

I know BBEdit has an HTML formatter. Can it also format code? Like what https://beautifier.io/ does for JavaScript?

BBEdit has fantastic support for Text Filters. So if your formatter of choice works via CLI, writing a formatter (prettifier) is fairly trivial.

I have attached the filter script I use, which auto-detects language and applies appropriate command. It should be easy to swap out `prettier` for `beautifier`.

I set a keyboard shortcut for the filter, so it's as simple to use as the built-in formatting - select the text to format, type shortcut. (No selection will format the whole document.)

-cng

--

    Charlie Garrison                   <[email protected]>
    Garrison Computer Services      <http://www.garrison.com.au>
    PO Box 380
    Tumbarumba NSW 2653  Australia

--
This is the BBEdit Talk public discussion group. If you have a feature request or need 
technical support, please email "[email protected]" rather than posting here. 
Follow @bbedit on Twitter: <https://twitter.com/bbedit>
--- You received this message because you are subscribed to the Google Groups "BBEdit Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/bbedit/852FB848-89F7-4E5C-9872-1C361ECAEEAA%40garrison.com.au.
#!/bin/sh

## https://github.com/prettier/prettier
## https://prettier.io

##  ~/.prettierrc.js

# echo $BB_DOC_NAME
# echo $BB_DOC_LANGUAGE
# SCSS

if [ "$BB_DOC_LANGUAGE" == "SCSS" ]; then
        prettier --parser scss
elif [ "$BB_DOC_LANGUAGE" == "JavaScript" ] || [ "$BB_DOC_LANGUAGE" == "HTML" 
]; then
        prettier --parser flow
        # prettier --parser babel
elif [ "$BB_DOC_LANGUAGE" == "JSON" ]; then
        prettier --parser json
elif [ "$BB_DOC_LANGUAGE" == "SQL (Generic)" ] || [ "$BB_DOC_LANGUAGE" == "SQL 
(MySQL)" ]; then
        cli-sql-formatter --dialect sql
else
        echo "unknown language: $BB_DOC_LANGUAGE"
fi
# prettier --use-tabs


#  --parser 
<flow|babylon|typescript|css|less|scss|json|json5|json-stringify|graphql|markdown|mdx|vue|yaml|html|angular>

Reply via email to