diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -31,6 +31,7 @@
 import qualified Data.Text as T
 import qualified Data.Vector as V
 import qualified Options.Applicative as O
+import Safe (headMay)
 import Turtle
 import Turtle.Line
 
@@ -52,6 +53,7 @@
                        , refField              :: Int
                        , posField              :: Maybe Int
                        , ignoreField           :: Maybe Int
+                       , ignoreChar            :: Maybe String
                        , inputMinSize          :: Int
                        , gaussWindow           :: Int
                        , gaussTime             :: Double
@@ -165,6 +167,13 @@
                    \ and thus helps remove false positives."
           )
         )
+      <*> O.optional ( O.strOption
+          ( O.long "ignore-char"
+         <> O.metavar "[Nothing or NonAssembly CHAR] | CHAR"
+         <> O.help "Character to ignore, useful for gaps.\
+                   \ Defaults to nothing or the character used in NonAssembly."
+          )
+        )
       <*> O.option O.auto
           ( O.long "min-size"
          <> O.short 's'
@@ -488,6 +497,17 @@
 runFindDuplication opts streamIn =
     inproc "heatitup" commandList streamIn
   where
+    ignoreCharArg (NonAssembly c) = Just
+                                  . ("--ignore-char" :)
+                                  . (\x -> [[x]])
+                                  . fromMaybe c
+                                  . (=<<) headMay
+                                  . ignoreChar
+                                  $ opts
+    ignoreCharArg _ = fmap (("--ignore-char" :) . (\x -> [[x]]))
+                    . (=<<) headMay
+                    . ignoreChar
+                    $ opts
     commandList =
         fmap T.pack
             . concat
@@ -501,6 +521,7 @@
               , Just ["--reference-field", show . refField $ opts]
               , fmap (("--position-field" :) . (:[]) . show) . posField $ opts
               , fmap (("--ignore-field" :) . (:[]) . show) . ignoreField $ opts
+              , ignoreCharArg $ preprocessType opts
               , Just ["--min-size", show . inputMinSize $ opts]
               , Just ["--gaussian-window", show . gaussWindow $ opts]
               , Just ["--gaussian-time", show . gaussTime $ opts]
diff --git a/heatitup-complete.cabal b/heatitup-complete.cabal
--- a/heatitup-complete.cabal
+++ b/heatitup-complete.cabal
@@ -1,5 +1,5 @@
 name:                heatitup-complete
-version:             0.5.3.3
+version:             0.5.4.0
 synopsis:            Find and annotate ITDs with assembly or read pair joining.
 description:         Find and annotate ITDs with assembly or read pair joining using suffix trees and characterize the exogenous segments within the spacer using heat diffusion.
 homepage:            http://github.com/GregorySchwartz/heatitup-complete#readme
@@ -7,7 +7,7 @@
 license-file:        LICENSE
 author:              Gregory W. Schwartz
 maintainer:          gsch@pennmedicine.upenn.edu
-copyright:           Copyright: (c) 2018 Gregory W. Schwartz
+copyright:           Copyright: (c) 2019 Gregory W. Schwartz
 category:            Bioinformatics
 build-type:          Simple
 -- extra-source-files:
