diff --git a/hls-floskell-plugin.cabal b/hls-floskell-plugin.cabal
--- a/hls-floskell-plugin.cabal
+++ b/hls-floskell-plugin.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.4
 name:               hls-floskell-plugin
-version:            1.0.1.1
+version:            1.0.1.2
 synopsis:           Integration with the Floskell code formatter
 description:
   Please see the README on GitHub at <https://github.com/haskell/haskell-language-server#readme>
@@ -17,20 +17,28 @@
   test/testdata/**/*.hs
 
 library
+  if impl(ghc >= 9.3)
+    buildable: False
+  else
+    buildable: True
   exposed-modules:  Ide.Plugin.Floskell
   hs-source-dirs:   src
   build-depends:
     , base            >=4.12 && <5
     , floskell        ^>=0.10
-    , ghcide          ^>=1.6 || ^>=1.7
-    , hls-plugin-api  ^>=1.3 || ^>=1.4
-    , lsp-types
+    , ghcide          ^>=1.6 || ^>=1.7 || ^>= 1.8
+    , hls-plugin-api  ^>=1.3 || ^>=1.4 || ^>= 1.5
+    , lsp-types       ^>=1.6
     , text
     , transformers
 
   default-language: Haskell2010
 
 test-suite tests
+  if impl(ghc >= 9.3)
+    buildable: False
+  else
+    buildable: True
   type:             exitcode-stdio-1.0
   default-language: Haskell2010
   hs-source-dirs:   test
@@ -40,4 +48,4 @@
     , base
     , filepath
     , hls-floskell-plugin
-    , hls-test-utils       ^>=1.3
+    , hls-test-utils       ^>=1.3 || ^>= 1.4
diff --git a/src/Ide/Plugin/Floskell.hs b/src/Ide/Plugin/Floskell.hs
--- a/src/Ide/Plugin/Floskell.hs
+++ b/src/Ide/Plugin/Floskell.hs
@@ -33,7 +33,7 @@
     config <- findConfigOrDefault file
     let (range, selectedContents) = case typ of
           FormatText    -> (fullRange contents, contents)
-          FormatRange r -> (r, extractRange r contents)
+          FormatRange r -> (normalize r, extractRange r contents)
         result = reformat config (Just file) . TL.encodeUtf8 $ TL.fromStrict selectedContents
     case result of
       Left  err -> pure $ Left $ responseError $ T.pack $ "floskellCmd: " ++ err
