diff --git a/src/main/frontend/format/mldoc.cljs b/src/main/frontend/format/mldoc.cljs index c9299ceb42..0aec44e49c 100644 --- a/src/main/frontend/format/mldoc.cljs +++ b/src/main/frontend/format/mldoc.cljs @@ -115,7 +115,8 @@ properties (cond-> properties (seq macros) (assoc :macros macros)) - alias (->vec-concat (:roam_alias properties) (:alias properties)) + alias (->> (->vec-concat (:roam_alias properties) (:alias properties)) + (remove string/blank?)) filetags (if-let [org-file-tags (:filetags properties)] (->> (string/split org-file-tags ":") (remove string/blank?))) @@ -126,7 +127,8 @@ rest (->> (string/split rest " ") (remove string/blank?))] (concat quoted rest))) - tags (->vec-concat roam-tags (:tags properties) definition-tags filetags) + tags (->> (->vec-concat roam-tags (:tags properties) definition-tags filetags) + (remove string/blank?)) properties (assoc properties :tags tags :alias alias) properties (-> properties (update :roam_alias ->vec) diff --git a/src/main/frontend/handler/extract.cljs b/src/main/frontend/handler/extract.cljs index 06af836507..e5d24f2521 100644 --- a/src/main/frontend/handler/extract.cljs +++ b/src/main/frontend/handler/extract.cljs @@ -65,45 +65,46 @@ page-list (when-let [list-content (:list properties)] (extract-page-list list-content))] (cond-> - (util/remove-nils - {:page/name (string/lower-case page) - :page/original-name page - :page/file [:file/path file] - :page/journal? journal? - :page/journal-day (if journal? - (date/journal-title->int page) - 0)}) + (util/remove-nils + {:page/name (string/lower-case page) + :page/original-name page + :page/file [:file/path file] + :page/journal? journal? + :page/journal-day (if journal? + (date/journal-title->int page) + 0)}) (seq properties) (assoc :page/properties properties) aliases (assoc :page/alias (map - (fn [alias] - (let [page-name (string/lower-case alias) - aliases (distinct - (conj - (remove #{alias} aliases) - page)) - aliases (if (seq aliases) - (map - (fn [alias] - {:page/name alias}) - aliases))] - (if (seq aliases) - {:page/name page-name - :page/alias aliases} - {:page/name page-name}))) - aliases)) + (fn [alias] + (let [page-name (string/lower-case alias) + aliases (distinct + (conj + (remove #{alias} aliases) + page)) + aliases (if (seq aliases) + (map + (fn [alias] + {:page/name alias}) + aliases))] + (if (seq aliases) + {:page/name page-name + :page/alias aliases} + {:page/name page-name}))) + aliases)) (:tags properties) - (assoc :page/tags (let [tags (:tags properties)] + (assoc :page/tags (let [tags (->> (:tags properties) + (remove string/blank?))] (swap! ref-tags set/union (set tags)) (map (fn [tag] {:page/name (string/lower-case tag) :page/original-name tag}) - tags)))))) + tags)))))) (->> (map first pages) - (remove nil?)))) + (remove string/blank?)))) pages (concat pages (map diff --git a/src/main/frontend/handler/page.cljs b/src/main/frontend/handler/page.cljs index 3334d7e8e2..88c3ed63f8 100644 --- a/src/main/frontend/handler/page.cljs +++ b/src/main/frontend/handler/page.cljs @@ -572,7 +572,10 @@ (editor-handler/insert-command! id (str "#" chosen) format - {:last-pattern (str "#" (if @editor-handler/*selected-text "" q))}))) + {:last-pattern (let [q (if @editor-handler/*selected-text "" q)] + (if (and q (string/starts-with? q "#")) + q + (str "#" q)))}))) (fn [chosen _click?] (state/set-editor-show-page-search! false) (let [page-ref-text (get-page-ref-text chosen)] diff --git a/src/main/frontend/version.cljs b/src/main/frontend/version.cljs index 3de82da97b..93993e672e 100644 --- a/src/main/frontend/version.cljs +++ b/src/main/frontend/version.cljs @@ -1,3 +1,3 @@ (ns frontend.version) -(defonce version "0.0.10.7") +(defonce version "0.0.10.8")