on main help sign in
fix(sidebar): compute the right line count even on windows / crlf
705d6f6Andrey Nering
internal/tui/components/chat/sidebar/sidebar.go+6−3
@@ -12,6 +12,7 @@ import (
12 "github.com/charmbracelet/crush/internal/config"
12 "github.com/charmbracelet/crush/internal/config"
13 "github.com/charmbracelet/crush/internal/csync"
13 "github.com/charmbracelet/crush/internal/csync"
14 "github.com/charmbracelet/crush/internal/diff"
14 "github.com/charmbracelet/crush/internal/diff"
15+ "github.com/charmbracelet/crush/internal/fsext"
15 "github.com/charmbracelet/crush/internal/history"
16 "github.com/charmbracelet/crush/internal/history"
16 "github.com/charmbracelet/crush/internal/lsp"
17 "github.com/charmbracelet/crush/internal/lsp"
17 "github.com/charmbracelet/crush/internal/pubsub"
18 "github.com/charmbracelet/crush/internal/pubsub"
@@ -190,8 +191,8 @@ func (m *sidebarCmp) handleFileHistoryEvent(event pubsub.Event[history.File]) te
190 // If the version is not greater than the latest, we ignore it
191 // If the version is not greater than the latest, we ignore it
191 continue
192 continue
192 }
193 }
193− before := existing.History.initialVersion.Content
194+ before, _ := fsext.ToUnixLineEndings(existing.History.initialVersion.Content)
194− after := existing.History.latestVersion.Content
195+ after, _ := fsext.ToUnixLineEndings(existing.History.latestVersion.Content)
195 path := existing.History.initialVersion.Path
196 path := existing.History.initialVersion.Path
196 cwd := config.Get().WorkingDir()
197 cwd := config.Get().WorkingDir()
197 path = strings.TrimPrefix(path, cwd)
198 path = strings.TrimPrefix(path, cwd)
@@ -248,7 +249,9 @@ func (m *sidebarCmp) loadSessionFiles() tea.Msg {
248 for path, fh := range fileMap {
249 for path, fh := range fileMap {
249 cwd := config.Get().WorkingDir()
250 cwd := config.Get().WorkingDir()
250 path = strings.TrimPrefix(path, cwd)
251 path = strings.TrimPrefix(path, cwd)
252+ before, _ := fsext.ToUnixLineEndings(fh.initialVersion.Content)
253+ after, _ := fsext.ToUnixLineEndings(fh.latestVersion.Content)
251− _, additions, deletions := diff.GenerateDiff(fh.initialVersion.Content, fh.latestVersion.Content, path)
254+ _, additions, deletions := diff.GenerateDiff(before, after, path)
252 sessionFiles = append(sessionFiles, SessionFile{
255 sessionFiles = append(sessionFiles, SessionFile{
253 History: fh,
256 History: fh,
254 FilePath: path,
257 FilePath: path,