From nobody Sun Jul 24 10:28:19 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4LrKBq62Jzz4XSxm; Sun, 24 Jul 2022 10:28:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LrKBq5CjFz3VpB; Sun, 24 Jul 2022 10:28:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1658658499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lBLf8qNpxaVREiNHpNkcThwrkhysVloOTWRNIIr9+j8=; b=VB2oBKs6EBO+dCqK4AIaFSHwDnTK3MQbz5WHOsrsdgCWGlrWXTihOc69ddM5RNHLLy5th4 RW2PkMdYMaOYzuPJMOGa8ek4+5MhHpx3btqc8uju15i6IuiUwkG0h6UvnlHbodgnDqV15W gNNYMB74ZFX9j0qwGpVyKdXtmexlrh4KwX/vTUt5R6fvn60HSzUcyPRzYkm2+Zd4lT3fP/ LioPKSMVRsWAeoCIAf2Q8ikM7eluTOmeDbHLa7svanbed/fHdeKM1EopsOh4E3uJJke4Yg q6F0ahZVBoS2T1BXOZ2TkbbmjMDMwdvIX30PMdkMoEHEWy317Fs5nQUa9yxX2A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4LrKBq4GbNzFVv; Sun, 24 Jul 2022 10:28:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 26OASJ7P086054; Sun, 24 Jul 2022 10:28:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 26OASJpM086053; Sun, 24 Jul 2022 10:28:19 GMT (envelope-from git) Date: Sun, 24 Jul 2022 10:28:19 GMT Message-Id: <202207241028.26OASJpM086053@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Muhammad Moinur Rahman Subject: git: 7e369d50c421 - main - textproc/vale: New Port List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bofh X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7e369d50c42194858bd3cb1569dbf2bb89e251cc Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1658658499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lBLf8qNpxaVREiNHpNkcThwrkhysVloOTWRNIIr9+j8=; b=wMVQsYqPVa4FVqfIcCFVrOJyQ7sDiM4MEeuzYxdQ7KAyeyD3nrUuGcWPdkA4YcbGj8Qn50 sh1DMcZNNYM//N9Zuxrqg6okgNbZYu5ytK5yLNHt5TsLWDgSMehL7kenlH4tv+YIzW2oCm +WPRk0mBYyUliwuEEX7L+rdTxKVoA1a2pkSbylOSnUcnOe6OexCvRp82XHCn0QG148dgGu 3QQpmo43bsp7B02iSlEYjPxWCaWorw3eGj5KgkO9Ng8q0G3ghseLYYulOy0BCqVf3ysACL P26X1kL0j65SFREPOYUGReB+d6VbeuwU8k7/D9dus3sFV+r2M/snQnhM3K3F9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1658658499; a=rsa-sha256; cv=none; b=QjcpodWEepWC8AomPWjXYKjTj45suOmamvpBOLZnjXfMhHMrPsb9bBxOJM/DaX2W0JjdQQ 6DEJSy3MbT4TU4KggDyEEddTOqJiYD+DFFu0awi0t5Ow+JpUFAuEmhXAMU2Mm+qDgwDbpz UVh1ZXqIGjQCQWk02xZ0tjPK5gMlWs8hWvzlJG/skatkrlADnE/2GgyFHpszYLuyCw4ha9 ZtMf3DMuTcvDIyv4ELjmhmrvmA2FTlvxlggPHXtF4+fGA17XHa8ikvGE0jZsLhp+8KsBzg mmhz2R2RHiTF/Wh/PAtHjD4sgtopyWBTKeRgiJzya/uJkaLRlP9k2GqRq8Gh4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by bofh: URL: https://cgit.FreeBSD.org/ports/commit/?id=7e369d50c42194858bd3cb1569dbf2bb89e251cc commit 7e369d50c42194858bd3cb1569dbf2bb89e251cc Author: Muhammad Moinur Rahman AuthorDate: 2022-07-24 09:59:32 +0000 Commit: Muhammad Moinur Rahman CommitDate: 2022-07-24 10:28:14 +0000 textproc/vale: New Port Command-line tool that brings editorial style guide to life When you think about software built for automated writing assistance, a lot of assumptions probably come to mind. You have heard terms like cloud-based, artificial intelligence, and machine learning. You have been promised sophisticated, human-like feedback to dramatically improve your writing. Vale is none of that; it was not designed to be, and it does not try to be. To put it succinctly, Vale does not teach you how to write, it is a tool for writers. This distinction is particularly important to understand because Vale does not offer any of its own advice. Instead, it offers a framework for creating and enforcing custom rules. Its approach is much more similar to code linters than it is to traditional grammar checkers. WWW: https://vale.sh/ --- textproc/Makefile | 1 + textproc/vale/Makefile | 59 ++++++++++++++++++++++++++++++++++++ textproc/vale/distinfo | 79 +++++++++++++++++++++++++++++++++++++++++++++++++ textproc/vale/pkg-descr | 16 ++++++++++ 4 files changed, 155 insertions(+) diff --git a/textproc/Makefile b/textproc/Makefile index 9c273b5fd591..a2a41a1cdefb 100644 --- a/textproc/Makefile +++ b/textproc/Makefile @@ -1964,6 +1964,7 @@ SUBDIR += urlview SUBDIR += utf8proc SUBDIR += uz-aspell + SUBDIR += vale SUBDIR += vbindiff SUBDIR += ve-hunspell SUBDIR += vgrep diff --git a/textproc/vale/Makefile b/textproc/vale/Makefile new file mode 100644 index 000000000000..f9c4e9cdc066 --- /dev/null +++ b/textproc/vale/Makefile @@ -0,0 +1,59 @@ +PORTNAME= vale +PORTVERSION= 2.20.1 +DISTVERSIONPREFIX= v +CATEGORIES= textproc + +MAINTAINER= bofh@FreeBSD.org +COMMENT= Command-line tool that brings editorial style guide to life + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= go:modules +USE_GITHUB= yes +GH_ACCOUNT= errata-ai +GH_TUPLE= \ + atomicgo:cursor:v0.0.1:atomicgo_cursor/vendor/github.com/atomicgo/cursor \ + d5:tengo:v2.10.0:d5_tengo_v2/vendor/github.com/d5/tengo/v2 \ + dsnet:compress:f66993602bf5:dsnet_compress/vendor/github.com/dsnet/compress \ + errata-ai:ini:v1.63.0:errata_ai_ini/vendor/github.com/errata-ai/ini \ + errata-ai:regexp2:v1.7.0:errata_ai_regexp2/vendor/github.com/errata-ai/regexp2 \ + frankban:quicktest:v1.14.3:frankban_quicktest/vendor/github.com/frankban/quicktest \ + go-check:check:788fd7840127:go_check_check/vendor/gopkg.in/check.v1 \ + go-yaml:yaml:v2.4.0:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \ + gobwas:glob:v0.2.3:gobwas_glob/vendor/github.com/gobwas/glob \ + golang:net:e18ecbb05110:golang_net/vendor/golang.org/x/net \ + golang:snappy:v0.0.4:golang_snappy/vendor/github.com/golang/snappy \ + golang:sys:97ac67df715c:golang_sys/vendor/golang.org/x/sys \ + golang:term:03fcf44c2211:golang_term/vendor/golang.org/x/term \ + gookit:color:v1.4.2:gookit_color/vendor/github.com/gookit/color \ + jdkato:prose:v1.2.1:jdkato_prose/vendor/github.com/jdkato/prose \ + jdkato:regexp:v0.1.0:jdkato_regexp/vendor/github.com/jdkato/regexp \ + jdkato:titlecase:0158ddd948b8:jdkato_titlecase/vendor/github.com/jdkato/titlecase \ + karrick:godirwalk:v1.16.1:karrick_godirwalk/vendor/github.com/karrick/godirwalk \ + mattn:go-runewidth:v0.0.13:mattn_go_runewidth/vendor/github.com/mattn/go-runewidth \ + mholt:archiver:v3.1.1:mholt_archiver/vendor/github.com/mholt/archiver \ + mitchellh:mapstructure:v1.4.0:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \ + montanaflynn:stats:v0.6.3:montanaflynn_stats/vendor/github.com/montanaflynn/stats \ + neurosnap:sentences:v1.0.6:neurosnap_sentences/vendor/gopkg.in/neurosnap/sentences.v1 \ + niklasfasching:go-org:v1.6.5:niklasfasching_go_org/vendor/github.com/niklasfasching/go-org \ + nwaples:rardecode:v1.1.0:nwaples_rardecode/vendor/github.com/nwaples/rardecode \ + olekukonko:tablewriter:v0.0.4:olekukonko_tablewriter/vendor/github.com/olekukonko/tablewriter \ + otiai10:copy:v1.7.0:otiai10_copy/vendor/github.com/otiai10/copy \ + pierrec:lz4:v2.6.1:pierrec_lz4/vendor/github.com/pierrec/lz4 \ + pterm:pterm:v0.12.33:pterm_pterm/vendor/github.com/pterm/pterm \ + remeh:sizedwaitgroup:v1.0.0:remeh_sizedwaitgroup/vendor/github.com/remeh/sizedwaitgroup \ + rivo:uniseg:v0.2.0:rivo_uniseg/vendor/github.com/rivo/uniseg \ + shogo82148:go-shuffle:27e6095f230d:shogo82148_go_shuffle/vendor/github.com/shogo82148/go-shuffle \ + spf13:cast:v1.3.1:spf13_cast/vendor/github.com/spf13/cast \ + spf13:pflag:v1.0.5:spf13_pflag/vendor/github.com/spf13/pflag \ + ulikunitz:xz:v0.5.10:ulikunitz_xz/vendor/github.com/ulikunitz/xz \ + xi2:xz:48954b6210f8:xi2_xz/vendor/github.com/xi2/xz \ + xo:terminfo:ca9a967f8778:xo_terminfo/vendor/github.com/xo/terminfo \ + yuin:goldmark:v1.4.12:yuin_goldmark/vendor/github.com/yuin/goldmark + +GO_TARGET= ./cmd/vale + +PLIST_FILES= bin/vale + +.include diff --git a/textproc/vale/distinfo b/textproc/vale/distinfo new file mode 100644 index 000000000000..89d772bbd827 --- /dev/null +++ b/textproc/vale/distinfo @@ -0,0 +1,79 @@ +TIMESTAMP = 1658655068 +SHA256 (errata-ai-vale-v2.20.1_GH0.tar.gz) = 48cb6e37579b83fb75b919021c79e92c6b0519998818bf0080b2c7a53cf5f563 +SIZE (errata-ai-vale-v2.20.1_GH0.tar.gz) = 10076112 +SHA256 (atomicgo-cursor-v0.0.1_GH0.tar.gz) = f6a86cf87f072731f121ac9785bc01b9e7ea77ef1ef285ac4f190998002369e9 +SIZE (atomicgo-cursor-v0.0.1_GH0.tar.gz) = 6308 +SHA256 (d5-tengo-v2.10.0_GH0.tar.gz) = 487331f79a3742fc05817d6210f6fb751b3ade90826910dde634037c60804f4e +SIZE (d5-tengo-v2.10.0_GH0.tar.gz) = 170501 +SHA256 (dsnet-compress-f66993602bf5_GH0.tar.gz) = 88bb28bce2fba7889ad67f2847cab5fefa52c3a63cb54eed209916ff57bb950a +SIZE (dsnet-compress-f66993602bf5_GH0.tar.gz) = 9963315 +SHA256 (errata-ai-ini-v1.63.0_GH0.tar.gz) = e6e0960e6e478f0b134ae88978bea6626d75e05f7d0ad6ec372b8a9e00b2547a +SIZE (errata-ai-ini-v1.63.0_GH0.tar.gz) = 30648 +SHA256 (errata-ai-regexp2-v1.7.0_GH0.tar.gz) = 7288c966b242ccb37b9d42065f855f2a533c7279694406dfe15d2d98e11f232f +SIZE (errata-ai-regexp2-v1.7.0_GH0.tar.gz) = 206265 +SHA256 (frankban-quicktest-v1.14.3_GH0.tar.gz) = 499815a8cfe290fac4d99e1634118645a9ba277f4bf96a056b7b881cfde8afc3 +SIZE (frankban-quicktest-v1.14.3_GH0.tar.gz) = 39782 +SHA256 (go-check-check-788fd7840127_GH0.tar.gz) = b7c9de01f3ca7111d889f30f2bbcc36eda4d07c09f032aaba83e34a324146bae +SIZE (go-check-check-788fd7840127_GH0.tar.gz) = 31597 +SHA256 (go-yaml-yaml-v2.4.0_GH0.tar.gz) = d8e94679e5fff6bd1a35e10241543929a5f3da44f701755babf99b3daf0faac0 +SIZE (go-yaml-yaml-v2.4.0_GH0.tar.gz) = 73209 +SHA256 (gobwas-glob-v0.2.3_GH0.tar.gz) = 325026fc78bcebcf31151b6e060f4e1c3321b04ded3dab63b63610b323c10850 +SIZE (gobwas-glob-v0.2.3_GH0.tar.gz) = 25962 +SHA256 (golang-net-e18ecbb05110_GH0.tar.gz) = c30374f6fd34c6b77d53224aa3ba7458e3773d7e6e4fa16d88fb05c7d05e0e89 +SIZE (golang-net-e18ecbb05110_GH0.tar.gz) = 1253124 +SHA256 (golang-snappy-v0.0.4_GH0.tar.gz) = 77df678795596f9dfecb5744deb984633d780460a7e9a59e0c7ecfe2052b644f +SIZE (golang-snappy-v0.0.4_GH0.tar.gz) = 66129 +SHA256 (golang-sys-97ac67df715c_GH0.tar.gz) = f8b6064dd0ea8daffd2ddb77423639bdf1ff21a5ee2daf1d8fddbc70882f689a +SIZE (golang-sys-97ac67df715c_GH0.tar.gz) = 1218597 +SHA256 (golang-term-03fcf44c2211_GH0.tar.gz) = 1919967c8fbf15de9261a2315d90072357524ee557d7df106b426def02a8e5f3 +SIZE (golang-term-03fcf44c2211_GH0.tar.gz) = 14972 +SHA256 (gookit-color-v1.4.2_GH0.tar.gz) = a34713db02e21042fc7d6620cc9293dfb8008240b632bd59fcccad3bd66b4585 +SIZE (gookit-color-v1.4.2_GH0.tar.gz) = 2177115 +SHA256 (jdkato-prose-v1.2.1_GH0.tar.gz) = 7f9b67ef0e50793f258f6d2786ad9db72cef481bf7edebf573ba33f52445fffa +SIZE (jdkato-prose-v1.2.1_GH0.tar.gz) = 4572595 +SHA256 (jdkato-regexp-v0.1.0_GH0.tar.gz) = 42c157b60b5b9b0721132f0dd365e568fbe847e30585f41523a5e1dc3a31f49e +SIZE (jdkato-regexp-v0.1.0_GH0.tar.gz) = 469601 +SHA256 (jdkato-titlecase-0158ddd948b8_GH0.tar.gz) = 47968cd5fb35750bdb035a68385e5b74b27302f43a8f58343a79c7451c3eed5a +SIZE (jdkato-titlecase-0158ddd948b8_GH0.tar.gz) = 6592 +SHA256 (karrick-godirwalk-v1.16.1_GH0.tar.gz) = a0416d5027f6ce66e6a22a9fb7d60ddc756b6e5e8f20398f3c3d43aa0092fd25 +SIZE (karrick-godirwalk-v1.16.1_GH0.tar.gz) = 27116 +SHA256 (mattn-go-runewidth-v0.0.13_GH0.tar.gz) = 9b2aeafa5d95a40b32067ba22accdf42cc83414ec5b433ea7de330791beaa196 +SIZE (mattn-go-runewidth-v0.0.13_GH0.tar.gz) = 17353 +SHA256 (mholt-archiver-v3.1.1_GH0.tar.gz) = 41ec54a7e0165c9bf1a567589a453c243394efff41dc446532f2028d98b476ac +SIZE (mholt-archiver-v3.1.1_GH0.tar.gz) = 42555 +SHA256 (mitchellh-mapstructure-v1.4.0_GH0.tar.gz) = 7629b5821ec91aa7fe5a786a9af46f81c22b78946d24a978b67cbf98552a96b6 +SIZE (mitchellh-mapstructure-v1.4.0_GH0.tar.gz) = 27238 +SHA256 (montanaflynn-stats-v0.6.3_GH0.tar.gz) = 6c58d45b02e7c54cba784007faf1d678b171a7872260d7b7dfc02d1ea05a1852 +SIZE (montanaflynn-stats-v0.6.3_GH0.tar.gz) = 47834 +SHA256 (neurosnap-sentences-v1.0.6_GH0.tar.gz) = 385f750a3e7ee579ab7092659f2e2c13ef80269d845da1f5b88c334ff7ca1aa4 +SIZE (neurosnap-sentences-v1.0.6_GH0.tar.gz) = 5181913 +SHA256 (niklasfasching-go-org-v1.6.5_GH0.tar.gz) = b1017aad87bae3c7d509d3d8cea6929362a115841f27abb2d1b8d8aa76a54ec6 +SIZE (niklasfasching-go-org-v1.6.5_GH0.tar.gz) = 239184 +SHA256 (nwaples-rardecode-v1.1.0_GH0.tar.gz) = c392668fef2a6cafa231d19d8bd0cb430637a5373f6e8ec3d93dc5a9f38af105 +SIZE (nwaples-rardecode-v1.1.0_GH0.tar.gz) = 34393 +SHA256 (olekukonko-tablewriter-v0.0.4_GH0.tar.gz) = a86028430fb4dd99ce0030a7c4d37915337c3b9a9efbfd2698b375f3e3488bd0 +SIZE (olekukonko-tablewriter-v0.0.4_GH0.tar.gz) = 19252 +SHA256 (otiai10-copy-v1.7.0_GH0.tar.gz) = c1ebf4aa789d2c17351b3d912270bf30fc52c327627c3f6e101f24f0b834e3cc +SIZE (otiai10-copy-v1.7.0_GH0.tar.gz) = 14488 +SHA256 (pierrec-lz4-v2.6.1_GH0.tar.gz) = cfc8577ba434eaaf0ba05b5e488aa70d23386beb8d8f978ac2cae62b218df5ff +SIZE (pierrec-lz4-v2.6.1_GH0.tar.gz) = 40117111 +SHA256 (pterm-pterm-v0.12.33_GH0.tar.gz) = f6f86f6820619b44cd4810d3af83dc9416b0e7546b167d1592810580d4e4f497 +SIZE (pterm-pterm-v0.12.33_GH0.tar.gz) = 178456 +SHA256 (remeh-sizedwaitgroup-v1.0.0_GH0.tar.gz) = 65b7051fb90964a24f51c27dad1d63b517b7599aa407643bd0a736de77ec4f7e +SIZE (remeh-sizedwaitgroup-v1.0.0_GH0.tar.gz) = 2676 +SHA256 (rivo-uniseg-v0.2.0_GH0.tar.gz) = 3ad738b5c9162ede110d75b23564b6e40e52dd9150ebbced402f4f70be106197 +SIZE (rivo-uniseg-v0.2.0_GH0.tar.gz) = 44036 +SHA256 (shogo82148-go-shuffle-27e6095f230d_GH0.tar.gz) = 8e927720b50f41d8ad9b2ac7c010427069f45afd82092652cf550b5713293b3c +SIZE (shogo82148-go-shuffle-27e6095f230d_GH0.tar.gz) = 3023 +SHA256 (spf13-cast-v1.3.1_GH0.tar.gz) = 4fa8d06903b490ae6f1316e55c5446d5648eea2b450671ebc54d4bbe79bc46b1 +SIZE (spf13-cast-v1.3.1_GH0.tar.gz) = 11102 +SHA256 (spf13-pflag-v1.0.5_GH0.tar.gz) = 9a2cae1f8e8ab0d2cc8ebe468e871af28d9ac0962cf0520999e3ba85f0c7b808 +SIZE (spf13-pflag-v1.0.5_GH0.tar.gz) = 50796 +SHA256 (ulikunitz-xz-v0.5.10_GH0.tar.gz) = 515f83921cf3e80b9196156cb4a0c1328243d5e09eca7c5ac7ce7e31b218c35b +SIZE (ulikunitz-xz-v0.5.10_GH0.tar.gz) = 479622 +SHA256 (xi2-xz-48954b6210f8_GH0.tar.gz) = 1ef05b11f53098ab157f5848bdf2f585a38af0db15822ea0691e7f51587a4ce3 +SIZE (xi2-xz-48954b6210f8_GH0.tar.gz) = 1135342 +SHA256 (xo-terminfo-ca9a967f8778_GH0.tar.gz) = 41fedf41ec1256fb337f75719e74283cf2e03c4460fa290800a1d73f0f83c12d +SIZE (xo-terminfo-ca9a967f8778_GH0.tar.gz) = 35429 +SHA256 (yuin-goldmark-v1.4.12_GH0.tar.gz) = e1eb6c98b06aa950ae244344995c97e8b6763f16b578a83e146487704f93ba5f +SIZE (yuin-goldmark-v1.4.12_GH0.tar.gz) = 257741 diff --git a/textproc/vale/pkg-descr b/textproc/vale/pkg-descr new file mode 100644 index 000000000000..c0dc69c48fb1 --- /dev/null +++ b/textproc/vale/pkg-descr @@ -0,0 +1,16 @@ +When you think about software built for automated writing assistance, a +lot of assumptions probably come to mind. You have heard terms like +cloud-based, artificial intelligence, and machine learning. You have +been promised sophisticated, human-like feedback to dramatically +improve your writing. + +Vale is none of that; it was not designed to be, and it does not try to be. +To put it succinctly, Vale does not teach you how to write, it is a tool for +writers. + +This distinction is particularly important to understand because Vale +does not offer any of its own advice. Instead, it offers a framework for +creating and enforcing custom rules. Its approach is much more similar +to code linters than it is to traditional grammar checkers. + +WWW: https://vale.sh/