svgsym 0.1.1.0 → 0.1.2.0
raw patch · 4 files changed
+71/−49 lines, 4 filesdep ~basedep ~bytestringdep ~optparse-applicative
Dependency ranges changed: base, bytestring, optparse-applicative
Files
- CHANGELOG.md +8/−0
- src-exe/Main.hs +10/−10
- src-exe/Svgsym/Options.hs +23/−23
- svgsym.cabal +30/−16
CHANGELOG.md view
@@ -1,5 +1,13 @@ # Revision history for svgsym +## 0.1.2.0 -- 2024-02-19++* Expand supported dependency versions.++* Make Nix Flake build using GHC 9.4 by default.++* Add support for building with 9.6 and 9.8 as well.+ ## 0.1.1.0 -- 2022-05-07 * Expand allowed versions of the base library.
src-exe/Main.hs view
@@ -58,9 +58,9 @@ Xml.CRef _ -> Nothing Xml.Elem e@(Element qName attrs symbol _) | qName == qnSymbol ->- if isUsed attrs- then Just $ Xml.Elem e- else Nothing+ if isUsed attrs+ then Just $ Xml.Elem e+ else Nothing | otherwise -> Nothing in mapMaybe f (elContent doc) }@@ -97,14 +97,14 @@ exitFailure Just doc | elName doc == qnSvg -> do- let doc' = filterDoc symbols doc- putStrLn $- if prettyPrint- then ppTopElement doc'- else showElement doc'+ let doc' = filterDoc symbols doc+ putStrLn $+ if prettyPrint+ then ppTopElement doc'+ else showElement doc' | otherwise -> do- hPutStrLn stderr "The XML file is not an SVG document"- exitFailure+ hPutStrLn stderr "The XML file is not an SVG document"+ exitFailure main :: IO () main = do
src-exe/Svgsym/Options.hs view
@@ -57,26 +57,26 @@ ( metavar "FILE" <> help "SVG file to prune" )- <*> some- ( strOption- ( long "content"- <> short 'c'- <> help "add glob pattern of files to include in search"- <> metavar "GLOB"- )- )- <*> strOption- ( long "symbol"- <> short 's'- <> help "regular expression that extracts symbol name"- <> metavar "REGEX"- )- <*> switch- ( long "pretty"- <> help "pretty print the output SVG file"- )- <*> switch- ( long "debug"- <> help "enable debug output"- <> internal- )+ <*> some+ ( strOption+ ( long "content"+ <> short 'c'+ <> help "add glob pattern of files to include in search"+ <> metavar "GLOB"+ )+ )+ <*> strOption+ ( long "symbol"+ <> short 's'+ <> help "regular expression that extracts symbol name"+ <> metavar "REGEX"+ )+ <*> switch+ ( long "pretty"+ <> help "pretty print the output SVG file"+ )+ <*> switch+ ( long "debug"+ <> help "enable debug output"+ <> internal+ )
svgsym.cabal view
@@ -1,19 +1,33 @@-cabal-version: 2.4-name: svgsym-version: 0.1.1.0-synopsis: A tool to prune unused symbols from icon SVG files.-homepage: https://git.sr.ht/~rycee/svgsym-bug-reports: https://lists.sr.ht/~rycee/public-inbox-license: GPL-3.0-or-later-license-file: LICENSE-author: Robert Helgesson-maintainer: robert@rycee.net-copyright: (c) 2022 Robert Helgesson-category: Utility-extra-source-files:+cabal-version: 2.4+name: svgsym+version: 0.1.2.0+synopsis: A tool to prune unused symbols from icon SVG files.+description:+ This is a simple tool to prune unused symbols from icon SVG files.+ Specifically, this tools takes as input+ - an SVG file that consists only of `symbol` elements,+ - one of more glob patterns of source files, and+ - a regular expression that identifies symbol references.+ It then scans your source files for references to symbols in the SVG+ file. The output of the tool is an SVG file that contains only the+ symbols referenced in your source files.++homepage: https://git.sr.ht/~rycee/svgsym+bug-reports: https://lists.sr.ht/~rycee/public-inbox+license: GPL-3.0-or-later+license-file: LICENSE+author: Robert Helgesson+maintainer: robert@rycee.net+copyright: © 2022–2024 Robert Helgesson+category: Utility+extra-doc-files: CHANGELOG.md README.md +source-repository head+ type: git+ location: https://git.sr.ht/~rycee/svgsym+ executable svgsym main-is: Main.hs autogen-modules: Paths_svgsym@@ -23,13 +37,13 @@ build-depends: , array ^>=0.5- , base >=4.14 && <4.17- , bytestring ^>=0.10+ , base >=4 && <5+ , bytestring >=0.10 && <0.13 , containers ^>=0.6 , directory ^>=1.3 , filepath ^>=1.4 , filepattern ^>=0.1.2- , optparse-applicative ^>=0.16+ , optparse-applicative >=0.16 && <0.19 , regex-base ^>=0.94 , regex-tdfa ^>=1.3.1 , xml ^>=1.3