mirror of https://github.com/logseq/logseq
fix: update reference by ignoring case
parent
dc42730c9a
commit
5313b364ca
|
@ -233,9 +233,9 @@
|
|||
new-tag (if (re-find #"[\s\t]+" new-name)
|
||||
(util/format "#[[%s]]" new-name)
|
||||
(str "#" new-name))]
|
||||
(-> (string/replace content (re-pattern (str "^" old-tag "\\b")) new-tag)
|
||||
(string/replace (re-pattern (str " " old-tag " ")) (str " " new-tag " "))
|
||||
(string/replace (re-pattern (str " " old-tag "$")) (str " " new-tag)))))
|
||||
(-> (util/replace-ignore-case content (str "^" old-tag "\\b") new-tag)
|
||||
(util/replace-ignore-case (str " " old-tag " ") (str " " new-tag " "))
|
||||
(util/replace-ignore-case (str " " old-tag "$") (str " " new-tag)))))
|
||||
|
||||
(defn- replace-old-page!
|
||||
[content old-name new-name]
|
||||
|
@ -264,10 +264,6 @@
|
|||
f))
|
||||
form))
|
||||
|
||||
(defn- build-new-namespace-page-title
|
||||
[old-page-title old-name new-name]
|
||||
(string/replace-first old-page-title old-name new-name))
|
||||
|
||||
(defn favorited?
|
||||
[page-name]
|
||||
(let [favorites (->> (:favorites (state/get-config))
|
||||
|
@ -412,8 +408,9 @@
|
|||
(string/lower-case old-ns-name))]
|
||||
(doseq [page nested-pages]
|
||||
(let [[_page-id old-page-name] page
|
||||
new-page-name (string/replace old-page-name
|
||||
(re-pattern (util/format "(?i)\\[\\[%s\\]\\]" old-ns-name))
|
||||
new-page-name (util/replace-ignore-case
|
||||
old-page-name
|
||||
(util/format "\\[\\[%s\\]\\]" old-ns-name)
|
||||
(util/format "[[%s]]" new-ns-name))]
|
||||
(rename-page-aux old-page-name new-page-name)))))
|
||||
|
||||
|
@ -422,7 +419,7 @@
|
|||
(let [pages (db/get-namespace-pages repo old-name)]
|
||||
(doseq [{:block/keys [name original-name] :as page} pages]
|
||||
(let [old-page-title (or original-name name)
|
||||
new-page-title (build-new-namespace-page-title old-page-title old-name new-name)]
|
||||
new-page-title (util/replace-first-ignore-case old-page-title old-name new-name)]
|
||||
(when (and old-page-title new-page-title)
|
||||
(p/let [_ (rename-page-aux old-page-title new-page-title)]
|
||||
(println "Renamed " old-page-title " to " new-page-title)))))))
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
#?(:cljs (:require
|
||||
["/frontend/selection" :as selection]
|
||||
["/frontend/utils" :as utils]
|
||||
[frontend.mobile.util :refer [is-native-platform?]]
|
||||
[camel-snake-kebab.core :as csk]
|
||||
[camel-snake-kebab.extras :as cske]
|
||||
[cljs-bean.core :as bean]
|
||||
[cljs-time.coerce :as tc]
|
||||
[cljs-time.core :as t]
|
||||
[dommy.core :as d]
|
||||
[frontend.mobile.util :refer [is-native-platform?]]
|
||||
[frontend.react-impls :as react-impls]
|
||||
[goog.dom :as gdom]
|
||||
[goog.object :as gobj]
|
||||
|
@ -621,6 +621,12 @@
|
|||
(str prefix new-value)))
|
||||
s)))
|
||||
|
||||
(defn replace-ignore-case [s old-value new-value]
|
||||
(string/replace s (re-pattern (str "(?i)" old-value)) new-value))
|
||||
|
||||
(defn replace-first-ignore-case [s old-value new-value]
|
||||
(string/replace-first s (re-pattern (str "(?i)" old-value)) new-value))
|
||||
|
||||
;; copy from https://stackoverflow.com/questions/18735665/how-can-i-get-the-positions-of-regex-matches-in-clojurescript
|
||||
#?(:cljs
|
||||
(defn re-pos [re s]
|
||||
|
|
Loading…
Reference in New Issue