diff --git a/src/display_list/from_snippet.rs b/src/display_list/from_snippet.rs
index e3d79ed..a30bf40 100644
--- a/src/display_list/from_snippet.rs
+++ b/src/display_list/from_snippet.rs
@@ -92,7 +92,7 @@ fn format_header(
             } = item
             {
                 if annotation.range.0 >= range.0 && annotation.range.0 <= range.1 {
-                    col = annotation.range.0 - range.0;
+                    col = annotation.range.0 - range.0 + 1;
                     break;
                 }
                 row += 1;
diff --git a/tests/fixtures/no-color/multiline_annotation.txt b/tests/fixtures/no-color/multiline_annotation.txt
index b900784..bacdec1 100644
--- a/tests/fixtures/no-color/multiline_annotation.txt
+++ b/tests/fixtures/no-color/multiline_annotation.txt
@@ -1,5 +1,5 @@
 error[E0308]: mismatched types
-  --> src/format.rs:51:5
+  --> src/format.rs:51:6
    |
 51 |   ) -> Option<String> {
    |        -------------- expected `std::option::Option<std::string::String>` because of return type
diff --git a/tests/fixtures/no-color/multiline_annotation2.txt b/tests/fixtures/no-color/multiline_annotation2.txt
index 5234ee8..8a00bfa 100644
--- a/tests/fixtures/no-color/multiline_annotation2.txt
+++ b/tests/fixtures/no-color/multiline_annotation2.txt
@@ -1,5 +1,5 @@
 error[E0027]: pattern does not mention fields `lineno`, `content`
-   --> src/display_list.rs:139:31
+   --> src/display_list.rs:139:32
     |
 139 |                           if let DisplayLine::Source {
     |  ________________________________^
diff --git a/tests/fixtures/no-color/simple.txt b/tests/fixtures/no-color/simple.txt
index a5a3136..752cc89 100644
--- a/tests/fixtures/no-color/simple.txt
+++ b/tests/fixtures/no-color/simple.txt
@@ -1,5 +1,5 @@
 error: expected one of `.`, `;`, `?`, or an operator, found `for`
-   --> src/format_color.rs:171:8
+   --> src/format_color.rs:171:9
     |
 169 |         })
     |           - expected one of `.`, `;`, `?`, or an operator here