Created
August 15, 2024 13:12
-
-
Save pubmania/200b6da0e3c5eaf4505c559b7f99e555 to your computer and use it in GitHub Desktop.
logseq config for project logs if using through demo web app
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{:meta/version 1 | |
;; Set the preferred format. | |
;; Available options: | |
;; - Markdown (default) | |
;; - Org | |
;; :preferred-format "Markdown" | |
;; Set the preferred workflow style. | |
;; Available options: | |
;; - :now for NOW/LATER style (default) | |
;; - :todo for TODO/DOING style | |
:preferred-workflow :now | |
;; Exclude directories/files. | |
;; Example usage: | |
;; :hidden ["/archived" "/test.md" "../assets/archived"] | |
:hidden [] | |
;; Define the default journal page template. | |
;; Enter the template name between the quotes. | |
:default-templates | |
{:journals ""} | |
;; Set a custom date format for the journal page title. | |
;; Default value: "MMM do, yyyy" | |
;; e.g., "Jan 19th, 2038" | |
;; Example usage e.g., "Tue 19th, Jan 2038" | |
;; :journal/page-title-format "EEE do, MMM yyyy" | |
;; Specify the journal filename format using a valid date format string. | |
;; !Warning: | |
;; This configuration is not retroactive and affects only new journals. | |
;; To show old journal files in the app, manually rename the files in the | |
;; journal directory to match the new format. | |
;; Default value: "yyyy_MM_dd" | |
;; :journal/file-name-format "yyyy_MM_dd" | |
;; Enable tooltip preview on hover. | |
;; Default value: true | |
:ui/enable-tooltip? true | |
;; Display brackets [[]] around page references. | |
;; Default value: true | |
;; :ui/show-brackets? true | |
;; Display all lines of a block when referencing ((block)). | |
;; Default value: false | |
:ui/show-full-blocks? false | |
;; Automatically expand block references when zooming in. | |
;; Default value: true | |
:ui/auto-expand-block-refs? true | |
;; Enable Block timestamps. | |
;; Default value: false | |
:feature/enable-block-timestamps? false | |
;; Disable accent marks when searching. | |
;; After changing this setting, rebuild the search index by pressing (^C ^S). | |
;; Default value: true | |
:feature/enable-search-remove-accents? true | |
;; Enable journals. | |
;; Default value: true | |
;; :feature/enable-journals? true | |
;; Enable flashcards. | |
;; Default value: true | |
;; :feature/enable-flashcards? true | |
;; Enable whiteboards. | |
;; Default value: true | |
;; :feature/enable-whiteboards? true | |
;; Disable the journal's built-in 'Scheduled tasks and deadlines' query. | |
;; Default value: false | |
;; :feature/disable-scheduled-and-deadline-query? false | |
;; Specify the number of days displayed in the future for | |
;; the 'scheduled tasks and deadlines' query. | |
;; Example usage: | |
;; Display all scheduled and deadline blocks for the next 14 days: | |
;; :scheduled/future-days 14 | |
;; Default value: 7 | |
;; :scheduled/future-days 7 | |
;; Specify the first day of the week. | |
;; Available options: | |
;; - integer from 0 to 6 (Monday to Sunday) | |
;; Default value: 6 (Sunday) | |
:start-of-week 6 | |
;; Specify a custom CSS import. | |
;; This option takes precedence over the local `logseq/custom.css` file. | |
;; Example usage: | |
;; :custom-css-url "@import url('https://cdn.jsdelivr.net/gh/dracula/logseq@master/custom.css');" | |
;; Specify a custom JS import. | |
;; This option takes precedence over the local `logseq/custom.js` file. | |
;; Example usage: | |
;; :custom-js-url "https://cdn.logseq.com/custom.js" | |
;; Set a custom Arweave gateway | |
;; Default gateway: https://arweave.net | |
;; :arweave/gateway "https://arweave.net" | |
;; Set bullet indentation when exporting | |
;; Available options: | |
;; - `:eight-spaces` as eight spaces | |
;; - `:four-spaces` as four spaces | |
;; - `:two-spaces` as two spaces | |
;; - `:tab` as a tab character (default) | |
;; :export/bullet-indentation :tab | |
;; Publish all pages within the Graph | |
;; Regardless of whether individual pages have been marked as public. | |
;; Default value: false | |
;; :publishing/all-pages-public? false | |
;; Define the default home page and sidebar status. | |
;; If unspecified, the journal page will be loaded on startup and the right sidebar will stay hidden. | |
;; The `:page` value represents the name of the page displayed at startup. | |
;; Available options for `:sidebar` are: | |
;; - "Contents" to display the Contents page in the right sidebar. | |
;; - A specific page name to display in the right sidebar. | |
;; - An array of multiple pages, e.g., ["Contents" "Page A" "Page B"]. | |
;; If `:sidebar` remains unset, the right sidebar will stay hidden. | |
;; Examples: | |
;; 1. Set "Changelog" as the home page and display "Contents" in the right sidebar: | |
;; :default-home {:page "Changelog", :sidebar "Contents"} | |
;; 2. Set "Jun 3rd, 2021" as the home page without the right sidebar: | |
;; :default-home {:page "Jun 3rd, 2021"} | |
;; 3. Set "home" as the home page and display multiple pages in the right sidebar: | |
;; :default-home {:page "home", :sidebar ["Page A" "Page B"]} | |
;; Set the default location for storing notes. | |
;; Default value: "pages" | |
;; :pages-directory "pages" | |
;; Set the default location for storing journals. | |
;; Default value: "journals" | |
;; :journals-directory "journals" | |
;; Set the default location for storing whiteboards. | |
;; Default value: "whiteboards" | |
;; :whiteboards-directory "whiteboards" | |
;; Enabling this option converts | |
;; [[Grant Ideas]] to [[file:./grant_ideas.org][Grant Ideas]] for org-mode. | |
;; For more information, visit https://github.com/logseq/logseq/issues/672 | |
;; :org-mode/insert-file-link? false | |
;; Configure custom shortcuts. | |
;; Syntax: | |
;; 1. + indicates simultaneous key presses, e.g., `Ctrl+Shift+a`. | |
;; 2. A space between keys represents key chords, e.g., `t s` means | |
;; pressing `t` followed by `s`. | |
;; 3. mod refers to `Ctrl` for Windows/Linux and `Command` for Mac. | |
;; 4. Use false to disable a specific shortcut. | |
;; 5. You can define multiple bindings for a single action, e.g., ["ctrl+j" "down"]. | |
;; The full list of configurable shortcuts is available at: | |
;; https://github.com/logseq/logseq/blob/master/src/main/frontend/modules/shortcut/config.cljs | |
;; Example: | |
;; :shortcuts | |
;; {:editor/new-block "enter" | |
;; :editor/new-line "shift+enter" | |
;; :editor/insert-link "mod+shift+k" | |
;; :editor/highlight false | |
;; :ui/toggle-settings "t s" | |
;; :editor/up ["ctrl+k" "up"] | |
;; :editor/down ["ctrl+j" "down"] | |
;; :editor/left ["ctrl+h" "left"] | |
;; :editor/right ["ctrl+l" "right"]} | |
:shortcuts {} | |
;; Configure the behavior of pressing Enter in document mode. | |
;; if set to true, pressing Enter will create a new block. | |
;; Default value: false | |
:shortcut/doc-mode-enter-for-new-block? false | |
;; Block content larger than `block/content-max-length` will not be searchable | |
;; or editable for performance. | |
;; Default value: 10000 | |
:block/content-max-length 10000 | |
;; Display command documentation on hover. | |
;; Default value: true | |
:ui/show-command-doc? true | |
;; Display empty bullet points. | |
;; Default value: false | |
:ui/show-empty-bullets? false | |
;; Pre-defined :view function to use with advanced queries. | |
:query/views | |
{:pprint | |
(fn [r] [:pre.code (pprint r)])} | |
;; Advanced queries `:result-transform` function. | |
;; Transform the query result before displaying it. | |
:query/result-transforms | |
{:sort-by-priority | |
(fn [result] (sort-by (fn [h] (get h :block/priority "Z")) result)) | |
:add-task-attrs (fn [result] | |
(def months {1 "January" 2 "February" 3 "March" 4 "April" 5 "May" 6 "June" 7 "July" 8 "August" 9 "September" 10 "October" 11 "November" 12 "December"}) | |
(def monthName (fn [dd] | |
(get months (int dd)) | |
)) | |
;; source: https://discuss.logseq.com/t/add-query-input-or-function-day-of-week/18361/12 | |
(def days {0 "Saturday" 1 "Sunday" 2 "Monday" 3 "Tuesday" 4 "Wednesday" 5 "Thursday" 6 "Friday"}) | |
(def weekDay (fn [date] | |
(def month (quot (mod date 10000) 100)) | |
(def month6 (quot (- month 8) 6)) | |
(def year6 (+ (quot date 10000) month6)) | |
(def yearnum (mod year6 100)) | |
(def century (quot year6 100)) | |
(def d (mod (+ (mod date 100) (quot (* 13 (inc (- month (* month6 12)))) 5) yearnum (quot yearnum 4) | |
(quot century 4) (* 5 century)) 7)) | |
(get days d) | |
)) | |
(def suffixes {0 "th" 1 "st" 2 "nd" 3 "rd" 4 "th" 5 "th" 6 "th" 7 "th" 8 "th" 9 "th"}) | |
(def positionalSuffix (fn [dd] | |
(if (or (= dd "11") (= dd "12") (= dd "13")) | |
(get suffixes 0) | |
(get suffixes (int (subs dd (count dd) 1))) ) | |
)) | |
(def token (fn [s] (str "⟨" s "⟩"))) | |
(def format | |
(-> (get (js->clj (call-api "get_user_configs")) "preferredDateFormat") | |
(clojure.string/replace "do" (token "1")) | |
(clojure.string/replace "dd" (token "2")) | |
(clojure.string/replace "d" (token "3")) | |
(clojure.string/replace "EEEE" (token "4")) | |
(clojure.string/replace "EEE" (token "5")) | |
(clojure.string/replace "EE" (token "6")) | |
(clojure.string/replace "E" (token "7")) | |
(clojure.string/replace "MMMM" (token "8")) | |
(clojure.string/replace "MMM" (token "9")) | |
(clojure.string/replace "MM" (token "10")) | |
(clojure.string/replace "M" (token "11")) | |
(clojure.string/replace "yyyy" (token "12")) | |
(clojure.string/replace "yy" (token "13")) | |
)) | |
(def parseDate (fn [date] | |
(if-not date nil | |
(let [ | |
regex (re-pattern "(\\d{4})(\\d{2})(\\d{2})") | |
[_ yyyy mm dd] (re-matches regex (str date)) | |
yy (subs yyyy 2 4) | |
d (str (int dd)) | |
do (str d (positionalSuffix dd)) | |
mmmm (monthName mm) | |
mmm (subs mmmm 0 3) | |
m (str (int mm)) | |
eeee (weekDay date) | |
eee (subs eeee 0 3) | |
ee (subs eeee 0 2) | |
e eee | |
] | |
(-> format | |
(clojure.string/replace (token "1") do) | |
(clojure.string/replace (token "2") dd) | |
(clojure.string/replace (token "3") d) | |
(clojure.string/replace (token "4") eeee) | |
(clojure.string/replace (token "5") eee) | |
(clojure.string/replace (token "6") ee) | |
(clojure.string/replace (token "7") e) | |
(clojure.string/replace (token "8") mmmm) | |
(clojure.string/replace (token "9") mmm) | |
(clojure.string/replace (token "10") mm) | |
(clojure.string/replace (token "11") m) | |
(clojure.string/replace (token "12") yyyy) | |
(clojure.string/replace (token "13") yy) | |
) | |
) | |
) | |
)) | |
(map (fn [x] | |
(update x :block/properties (fn [u] | |
(-> u | |
(assoc :marker (str (get x :block/marker)) ) | |
(assoc :priority (str (get x :block/priority)) ) | |
(assoc :deadline (parseDate (get x :block/deadline)) ) | |
(assoc :repeated? (str (get x :block/repeated?)) ) | |
) | |
)) | |
) | |
result) | |
) | |
} | |
;; The following queries will be displayed at the bottom of today's journal page. | |
;; The "NOW" query returns tasks with "NOW" or "DOING" status. | |
;; The "NEXT" query returns tasks with "NOW", "LATER", or "TODO" status. | |
:default-queries | |
{:journals | |
[{:title "🔨 NOW" | |
:query [:find (pull ?h [*]) | |
:in $ ?start ?today | |
:where | |
[?h :block/marker ?marker] | |
[(contains? #{"NOW" "DOING"} ?marker)] | |
[?h :block/page ?p] | |
[?p :block/journal? true] | |
[?p :block/journal-day ?d] | |
[(>= ?d ?start)] | |
[(<= ?d ?today)]] | |
:inputs [:14d :today] | |
:result-transform (fn [result] | |
(sort-by (fn [h] | |
(get h :block/priority "Z")) result)) | |
:group-by-page? false | |
:collapsed? false} | |
{:title "📅 NEXT" | |
:query [:find (pull ?h [*]) | |
:in $ ?start ?next | |
:where | |
[?h :block/marker ?marker] | |
[(contains? #{"NOW" "LATER" "TODO"} ?marker)] | |
[?h :block/page ?p] | |
[?p :block/journal? true] | |
[?p :block/journal-day ?d] | |
[(> ?d ?start)] | |
[(< ?d ?next)]] | |
:inputs [:today :7d-after] | |
:group-by-page? false | |
:collapsed? false}]} | |
;; Add custom commands to the command palette | |
;; To quickly call these commands, just type / (backslash) followed by characters in square bracket | |
:commands [ | |
["bookmark [.b]" [[:editor/input "{{renderer :template, Bookmark}}" ]]], | |
["date_today [dt]" [[:editor/input "{{renderer :template, Date Today}}" ]]], | |
["issue_table [.it]" [[:editor/input "{{renderer :template, Issue_table}}" ]]], | |
["issue [.is]" [[:editor/input "{{renderer :template, Issue}}" ]]], | |
["Blue Highlighter [=b]" [[:editor/input "<mark class='blue'></mark>" {:backward-pos 7}]]], | |
["Green Highlighter [=g]" [[:editor/input "<mark class='green'></mark>" {:backward-pos 7}]]], | |
["Gray Highlighter [=gra]" [[:edior/input "<mark class='gray'></mark>" {:backward-pos 7}]]], | |
["Grey Highlighter [=gre]" [[:editor/input "<mark class='grey'></mark>" {:backward-pos 7}]]], | |
["Orange Highlighter [=o]" [[:editor/input "<mark class='orange'></mark>" {:backward-pos 7}]]], | |
["Pink Highlighter [=p]" [[:editor/input "<mark class='pink'></mark>" {:backward-pos 7}]]], | |
["Red Highlighter [=r]" [[:editor/input "<mark class='red'></mark>" {:backward-pos 7}]]], | |
["Yellow Highlighter [=y]" [[:editor/input "<mark class='yellow'></mark>" {:backward-pos 7}]]], | |
["Purple Highlighter [=pu]" [[:editor/input "<mark class='purple'></mark>" {:backward-pos 7}]]], | |
["Red Blockquote [>r]" [[:editor/input "<blockquote class='red'></blockquote>" {:backward-pos 13}]]], | |
["Yellow Blockquote [>y]" [[:editor/input "<blockquote class='yellow'></blockquote>" {:backward-pos 13}]]], | |
["Blue Blockquote [>b]" [[:editor/input "<blockquote class='blue'></blockquote>" {:backward-pos 13}]]], | |
["circle [.c]" [[:editor/input "{{renderer :template-view, circle-template, :color orange}}" ]]], | |
] | |
;; Enable collapsing blocks with titles but no children. | |
;; By default, only blocks with children can be collapsed. | |
;; Setting `:outliner/block-title-collapse-enabled?` to true allows collapsing | |
;; blocks with titles (multiple lines) and content. For example: | |
;; - block title | |
;; block content | |
;; Default value: false | |
:outliner/block-title-collapse-enabled? false | |
;; Macros replace texts and will make you more productive. | |
;; Example usage: | |
;; Change the :macros value below to: | |
;; {"poem" "Rose is $1, violet's $2. Life's ordered: Org assists you."} | |
;; input "" | |
;; becomes | |
;; Rose is red, violet's blue. Life's ordered: Org assists you. | |
:macros { | |
">" "<blockquote class='$1'>$2</blockquote>" ;;usage | |
"==" "<mark class='$1'>$2</mark>" ;;usage | |
} | |
;; Configure the default expansion level for linked references. | |
;; For example, consider the following block hierarchy: | |
;; - a [[page]] (level 1) | |
;; - b (level 2) | |
;; - c (level 3) | |
;; - d (level 4) | |
;; | |
;; With the default value of level 2, block b will be collapsed. | |
;; If the level's value is set to 3, block c will be collapsed. | |
;; Default value: 2 | |
:ref/default-open-blocks-level 6 | |
;; Configure the threshold for linked references before collapsing. | |
;; Default value: 100 | |
:ref/linked-references-collapsed-threshold 1 | |
;; Graph view configuration. | |
;; Example usage: | |
;; :graph/settings | |
;; {:orphan-pages? true ; Default value: true | |
;; :builtin-pages? false ; Default value: false | |
;; :excluded-pages? false ; Default value: false | |
;; :journal? false} ; Default value: false | |
;; Graph view configuration. | |
;; Example usage: | |
;; :graph/forcesettings | |
;; {:link-dist 180 ; Default value: 180 | |
;; :charge-strength -600 ; Default value: -600 | |
;; :charge-range 600} ; Default value: 600 | |
;; Favorites to list on the left sidebar | |
:favorites [] | |
;; Set flashcards interval. | |
;; Expected value: | |
;; - Float between 0 and 1 | |
;; higher values result in faster changes to the next review interval. | |
;; Default value: 0.5 | |
;; :srs/learning-fraction 0.5 | |
;; Set the initial interval after the first successful review of a card. | |
;; Default value: 4 | |
;; :srs/initial-interval 4 | |
;; Hide specific block properties. | |
;; Example usage: | |
;; :block-hidden-properties #{:public :icon} | |
;; Create a page for all properties. | |
;; Default value: true | |
:property-pages/enabled? true | |
;; Properties to exclude from having property pages | |
;; Example usage: | |
;; :property-pages/excludelist #{:duration :author} | |
;; By default, property value separated by commas will not be treated as | |
;; page references. You can add properties to enable it. | |
;; Example usage: | |
;; :property/separated-by-commas #{:alias :tags} | |
;; Properties that are ignored when parsing property values for references | |
;; Example usage: | |
;; :ignored-page-references-keywords #{:author :website} | |
;; logbook configuration. | |
;; :logbook/settings | |
;; {:with-second-support? false ;limit logbook to minutes, seconds will be eliminated | |
;; :enabled-in-all-blocks true ;display logbook in all blocks after timetracking | |
;; :enabled-in-timestamped-blocks false ;don't display logbook at all | |
;; } | |
;; Mobile photo upload configuration. | |
;; :mobile/photo | |
;; {:allow-editing? true | |
;; :quality 80} | |
;; Mobile features options | |
;; Gestures | |
;; Example usage: | |
;; :mobile | |
;; {:gestures/disabled-in-block-with-tags ["kanban"]} | |
;; Extra CodeMirror options | |
;; See https://codemirror.net/5/doc/manual.html#config for possible options | |
;; Example usage: | |
;; :editor/extra-codemirror-options | |
;; {:lineWrapping false ; Default value: false | |
;; :lineNumbers true ; Default value: true | |
;; :readOnly false} ; Default value: false | |
;; Enable logical outdenting | |
;; Default value: false | |
;; :editor/logical-outdenting? false | |
;; Prefer pasting the file when text and a file are in the clipboard. | |
;; Default value: false | |
;; :editor/preferred-pasting-file? false | |
;; Quick capture templates for receiving content from other apps. | |
;; Each template contains three elements {time}, {text} and {url}, which can be auto-expanded | |
;; by receiving content from other apps. Note: the {} cannot be omitted. | |
;; - {time}: capture time | |
;; - {date}: capture date using current date format, use `[[{date}]]` to get a page reference | |
;; - {text}: text that users selected before sharing. | |
;; - {url}: URL or assets path for media files stored in Logseq. | |
;; You can also reorder them or use only one or two of them in the template. | |
;; You can also insert or format any text in the template, as shown in the following examples. | |
;; :quick-capture-templates | |
;; {:text "[[quick capture]] **{time}**: {text} from {url}" | |
;; :media "[[quick capture]] **{time}**: {url}"} | |
;; Quick capture options. | |
;; - insert-today? Insert the capture at the end of today's journal page (boolean). | |
;; - redirect-page? Redirect to the quick capture page after capturing (boolean). | |
;; - default-page The default page to capture to if insert-today? is false (string). | |
;; :quick-capture-options | |
;; {:insert-today? false ;; Default value: true | |
;; :redirect-page? false ;; Default value: false | |
;; :default-page "quick capture"} ;; Default page: "quick capture" | |
;; File sync options | |
;; Ignore these files when syncing, regexp is supported. | |
;; :file-sync/ignore-files [] | |
;; Configure the Enter key behavior for | |
;; context-aware editing with DWIM (Do What I Mean). | |
;; context-aware Enter key behavior implies that pressing Enter will | |
;; have different outcomes based on the context. | |
;; For instance, pressing Enter within a list generates a new list item, | |
;; whereas pressing Enter in a block reference opens the referenced block. | |
;; :dwim/settings | |
;; {:admonition&src? true ;; Default value: true | |
;; :markup? false ;; Default value: false | |
;; :block-ref? true ;; Default value: true | |
;; :page-ref? true ;; Default value: true | |
;; :properties? true ;; Default value: true | |
;; :list? false} ;; Default value: false | |
;; Configure the escaping method for special characters in page titles. | |
;; Warning: | |
;; This is a dangerous operation. To modify the setting, | |
;; access the 'Filename format' setting and follow the instructions. | |
;; Otherwise, You may need to manually rename all affected files and | |
;; re-index them on all clients after synchronization. | |
;; Incorrect handling may result in messy page titles. | |
;; Available options: | |
;; - :triple-lowbar (default) | |
;; ;use triple underscore `___` for slash `/` in page title | |
;; ;use Percent-encoding for other invalid characters | |
:file/name-format :triple-lowbar | |
:ui/show-brackets? false | |
:feature/enable-timetracking? false} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment