From f840a72e33a868350a8bd03bedea6323336e1d33 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Mon, 21 May 2018 18:31:00 +0200 Subject: [PATCH] Fix phrase detection error `fsharp-goto-block-up' doesn't return non-nil if (point) was moved. Refs #171 --- fsharp-mode-indent.el | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/fsharp-mode-indent.el b/fsharp-mode-indent.el index 027200b..e5a51c3 100644 --- a/fsharp-mode-indent.el +++ b/fsharp-mode-indent.el @@ -1595,10 +1595,13 @@ This tells add-log.el how to find the current function/method/variable." (defun fsharp-beginning-of-block () "Move point to the beginning of the current top-level block" (interactive) - (condition-case nil - (while (fsharp-goto-block-up 'no-mark)) - (error (while (continuation-p) - (forward-line -1)))) + (let ((prev (point))) + (condition-case nil + (while (progn (fsharp-goto-block-up 'no-mark) + (< (point) prev)) + (setq prev (point))) + (error (while (continuation-p) + (forward-line -1))))) (beginning-of-line)) (defun fsharp-end-of-block ()