MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.117.158.174
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/org/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/org/org-freemind.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:07:18 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/org/org-freemind.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305\306\307\310\302%\207" [require xml org org-exp custom-declare-group org-freemind nil "Customization group for org-freemind export/import." :group] 6)
#@15 Internal use.
(defvar org-freemind-node-style nil (#$ . 769))
#@41 Styles to apply to node.
NOT READY YET.
(custom-declare-variable 'org-freemind-node-styles nil '(#$ . 837) :type '(repeat (list :tag "Node styles for file" (regexp :tag "File name") (repeat (list :tag "Node" (regexp :tag "Node name regexp") (set :tag "Node properties" (list :format "%v" (const :format #1="" node-style) (choice :tag "Style" :value bubble (const bubble) (const fork))) (list :format "%v" (const :format #1# color) (color :tag "Color" :value "red")) (list :format "%v" (const :format #1# background-color) (color :tag "Background color" :value "yellow")) (list :format "%v" (const :format #1# edge-color) (color :tag "Edge color" :value "green")) (list :format "%v" (const :format #1# edge-style) (choice :tag "Edge style" :value bezier (const :tag "Linear" linear) (const :tag "Bezier" bezier) (const :tag "Sharp Linear" sharp-linear) (const :tag "Sharp Bezier" sharp-bezier))) (list :format "%v" (const :format #1# edge-width) (choice :tag "Edge width" :value thin (const :tag "Parent" parent) (const :tag "Thin" thin) (const 1) (const 2) (const 4) (const 8))) (list :format "%v" (const :format #1# italic) (const :tag "Italic font" t)) (list :format "%v" (const :format #1# bold) (const :tag "Bold font" t)) (list :format "%v" (const :format #1# font-name) (string :tag "Font name" :value "SansSerif")) (list :format "%v" (const :format #1# font-size) (integer :tag "Font size" :value 12))))))) :group 'org-freemind)
#@728 Export the current buffer as a Freemind file.
If there is an active region, export only the region.  HIDDEN is
obsolete and does nothing.  EXT-PLIST is a property list with
external parameters overriding org-mode's default settings, but
still inferior to file-local settings.  When TO-BUFFER is
non-nil, create a buffer with that name and export to that
buffer.  If TO-BUFFER is the symbol `string', don't leave any
buffer behind but just return the resulting HTML as a string.
When BODY-ONLY is set, don't produce the file header and footer,
simply return the content of the document (all top level
sections).  When PUB-DIR is set, use this as the publishing
directory.

See `org-freemind-from-org-mode' for more information.
(defalias 'org-export-as-freemind #[(&optional hidden ext-plist to-buffer body-only pub-dir) "\306\307 \310 #\311 \211\205\312 \n\205\313 \314	\315\"?\2055\n\2055\212b\210\316 \2054\317\320\211\"\fY)\211\203A\321	\"\202B	\211!\322\323 \206Mp!\"\324#\206Z\325\326	\"!\327
\203i\330\312 \331\320#\206m\332\"!!\333Q$\334$!\203~\335$!\210
\203\214\336\337!$\"\202\222\340\"$\".\207" [ext-plist opt-plist region-p rbeg rend subtree-p org-combine-plists org-default-export-plist org-infile-export-plist org-region-active-p region-beginning region-end plist-get :ignore-subtree-p org-at-heading-p org-end-of-subtree t org-export-add-subtree-options buffer-file-name buffer-base-buffer file-name-as-directory org-export-directory :ascii file-name-sans-extension org-entry-get "EXPORT_FILE_NAME" file-name-nondirectory ".mm" file-exists-p delete-file org-freemind-from-org-mode-node line-number-at-pos org-freemind-from-org-mode org-export-opt-plist bfname pub-dir filename] 7 (#$ . 2280) "P"])
#@32 Show file MM-FILE in Freemind.
(defalias 'org-freemind-show #[(mm-file) "\301!\207" [mm-file org-open-file] 2 (#$ . 4036) (list (let ((save-match-data-internal (match-data))) (unwind-protect (progn (let ((name (read-file-name "FreeMind file: " nil nil nil (if (buffer-file-name) (let* ((name-ext (file-name-nondirectory (buffer-file-name))) (name (file-name-sans-extension name-ext)) (ext (file-name-extension name-ext))) (cond ((string= "mm" ext) name-ext) ((string= "org" ext) (let ((name-mm (concat name ".mm"))) (if (file-exists-p name-mm) name-mm (message "Not exported to Freemind format yet") #1=""))) (t #1#))) #1#) #'(lambda (fn) (string-match "^mm$" (file-name-extension fn)))))) (setq name (expand-file-name name)) name)) (set-match-data save-match-data-internal 'evaporate))))])
(defconst org-freemind-org-nfix "--org-mode: ")
#@94 Do some html-escaping of ORG-STR and return the result.
The characters "&<> will be escaped.
(defalias 'org-freemind-escape-str-from-org #[(org-str) "\305\306\"\307\211\306\211\203W\f@	\310W\203G\311U\203#\312\202N\313U\203-\314\202N\315U\2037\316\202N\317U\203A\320\202N\321!\202N\322\323\324\325\"\"P\fA\211\204*	*\207" [org-str fm-str chars cc --dolist-tail-- append nil "" 160 34 "&quot;" 38 "&amp;" 60 "&lt;" 62 "&gt;" char-to-string format "&#x%x;" encode-char ucs] 7 (#$ . 4882)])
#@150 Do some html-unescaping of FM-STR and return the result.
This is the opposite of `org-freemind-escape-str-from-org' but it
will also unescape &#nn;.
(defalias 'org-freemind-unescape-str-to-org #[(fm-str) "\302\303\304	#\302\305\306	#\302\307\310	#\302\311\312	#\302\313\314	#\211)\207" [fm-str org-str replace-regexp-in-string "&quot;" "\"" "&amp;" "&" "&lt;" "<" "&gt;" ">" "&#x\\([a-f0-9]\\{2,4\\}\\);" #[(m) "\301\302\303\304\"\305\"\306\\!\207" [m char-to-string string-to-number match-string 1 16 0] 5]] 4 (#$ . 5405)])
#@85 Helper for `org-freemind-convert-links-from-org'.
MATCHED is the link just matched.
(defalias 'org-freemind-convert-links-helper #[(matched) "\306\307\"\306\310\"\311	!\312	\313\314\315
\f#,\316	!\2052	\317O\211\320\235)\211 \203H\321\322	\323\n\324\325\326\n\327\330\260\202O\331	\332\n\333\260-\207" [matched link text ext start string match-string 1 2 file-name-extension ":" nil t string-match image-type-from-file-name 0 ("file" "http" "https") "<table border=\"0\" style=\"border: solid 1px #ddd;\"><tr><td>" "<img src=\"" "\" alt=\"" "\" />" "<br />" "<i>" "</i>" "</td></tr></table>" "<a href=\"" "\">" "</a>" regexp inhibit-changing-match-data col-pos url-type is-img] 12 (#$ . 5944)])
#@71 Convert org links in ORG-STR to freemind links and return the result.
(defalias 'org-freemind-convert-links-from-org #[(org-str) "\302\303\304\305\211\306&\302\307\310	\311\211%)\207" [org-str fm-str replace-regexp-in-string "[^\"[]\\(http ?://[--:#%&()=?-Z_a-z~]+\\)" "[[\\1][\\1]]" nil 1 "\\[\\[\\(.*?\\)]\\[\\(.*?\\)]]" org-freemind-convert-links-helper t] 7 (#$ . 6670)])
#@70 Convert freemind links in FM-STR to org links and return the result.
(defalias 'org-freemind-convert-links-to-org #[(fm-str) "\301\302\303#\207" [fm-str replace-regexp-in-string "<a[[:space:]]\\(?:[^>]*[[:space:]]\\)*href=\"\\([^\"]*\\)\"[^>]*>\\([^<]*\\)</a>" "[[\\1][\\2]]"] 5 (#$ . 7055)])
(defvar org-freemind-bol-helper-base-indent nil)
#@77 Helper for `org-freemind-convert-text-p'.
MATCHED is the link just matched.
(defalias 'org-freemind-bol-helper #[(matched) "\306\307\310\"\310\211\2038
@\211\311U\203+\312	W\203$	S\2021\n\313P\2021\n\314\f!P
A\211\204*\n*\207" [org-freemind-bol-helper-base-indent bi res matched cc --dolist-tail-- "" append nil 32 0 "&#160;" char-to-string] 4 (#$ . 7404)])
#@43 Convert TEXT to html with <p> paragraphs.
(defalias 'org-freemind-convert-text-p #[(text) "\306\307\310\311\n	#,\312!\313\314\315#\313\316\317#\320P\313\321\322#\313\323\324#\313\325\326#\211\327P\330!\207" [text start string regexp inhibit-changing-match-data org-freemind-bol-helper-base-indent "[^ ]" nil t string-match org-freemind-escape-str-from-org replace-regexp-in-string "\\([[:space:]]\\)\\(/\\)\\([^/]+\\)\\(/\\)\\([[:space:]]\\)" "\\1<i>\\3</i>\\5" "\\([[:space:]]\\)\\(*\\)\\([^*]+\\)\\(*\\)\\([[:space:]]\\)" "\\1<b>\\3</b>\\5" "<p>" "\n[[:blank:]]*\n" "</p><p>" "\\(?:<p>\\|\n\\) +" org-freemind-bol-helper "\n" "<br />" "</p>" org-freemind-convert-links-from-org] 5 (#$ . 7786)])
#@31 CSS style for Freemind nodes.
(custom-declare-variable 'org-freemind-node-css-style "p { margin-top: 3px; margin-bottom: 3px; }" '(#$ . 8512) :version "24.1" :group 'org-freemind)
#@237 Convert text part of org node to freemind subnode or note.
Convert the text part of the org node named NODE-NAME. The text
is in the current buffer between START and END. Drawers matching
DRAWERS-REGEXP are converted to freemind notes.
(defalias 'org-freemind-org-text-to-freemind-subnode/note #[(node-name start end drawers-regexp) "\306	\"\307\211\310 \311\216\312%\313&\f\"\2031\314\315\f\"%B%\f\315\211\224O\f\315\225\312OP\202%\203x%\312'\211(\203w(@'\316'\317\"\211)\312*\211(\203m(@*\n+*\320R(A\211(\204W+(A\211(\204A*)\nG\315V\203\213\321\322\323\324\n\325\326\327\260\fG\330V\203\331\332\322,G\315U\203\241\307\202\251\333\334,\335\336\260\323\324\260\337\340\312\211\211-./01\3131\f\"\203\f\315\211\224O/\315\225-\341/!P\f-\312O\3130\f\"\211.\203\357\315\225-\202\372\342\343!\210\fG\211.-\f\315.OP\f-\312O\202\275\341\f!P-\325\326\327\n\344\260\n-D\207" [start end note-res node-res text save-match-data-internal buffer-substring-no-properties "" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) nil string-match match-string 0 split-string "\n" "<br />\n" "<richcontent TYPE=\"NOTE\"><html>\n" "<head>\n" "</head>\n" "<body>\n" "</body>\n" "</html>\n" "</richcontent>\n" 1 "<node style=\"bubble\" background_color=\"#eeee00\">\n" "<richcontent TYPE=\"NODE\"><html>\n" "<style type=\"text/css\">\n" "<!--\n" "-->\n" "</style>\n" "#\\+BEGIN_HTML" "#\\+END_HTML" org-freemind-convert-text-p message "org-freemind: Missing #+END_HTML" "</node>\n" drawers drawers-regexp drawer --dolist-tail-- lines line org-freemind-org-nfix org-freemind-node-css-style end-pos-match end-pos head end-html-mark begin-html-mark] 9 (#$ . 8699)])
(defalias 'org-freemind-write-node #[(mm-buffer drawers-regexp num-left-nodes base-level current-level next-level this-m2 this-node-end this-children-visible next-node-start next-has-some-visible-child) "\306\211\306\211\306\211\307\3106\"\203\255\311\312\306\2116$6\313\300\314\"\210\315\307\3166\"\203\255\317\320\3216\"!7\311\312\306\2116$67\322U\203O\313\300\323\"\210\324\202\2547\325U\203`\313\300\326\"\210\327\202\2547\330U\203q\313\300\331\"\210\332\202\2547\333U\203\202\313\300\334\"\210\335\202\2547\336U\203\221\313\300\337\"\210\202\2547\340U\203\240\313\300\341\"\210\202\2547\342U\203\254\313\300\343\"\210)\3446!6\30786\"\203\324\345\320\3216\"\320\3466\"\347R\311\350\306\2116\351%6\3526!\3539:S;$\211<@<A@)r=q\210\354\n\203\374\n\202\375\312\355\356\261\210\3576!\210>?V\203@\204A\204\360c\210?BTU\2035C\351V\2035CSC\361c\210	\203?\362	\356\261\210\363c\210\203f\306D\211E\203eE@D\364D\365\261\210EA\211E\204P*)r=q\210\f\203s\fc\210.C\207" [this-icons this-bg-color this-m2-link this-m2-escaped this-rich-node this-rich-note nil string-match "TODO" replace-match "" add-to-list "button_cancel" "#ffff88" "\\[#\\(.\\)\\]" string-to-char match-string 1 65 "full-1" "#ff0000" 66 "full-2" "#ffaa00" 67 "full-3" "#ffdd00" 68 "full-4" "#ffff00" 69 "full-5" 70 "full-6" 71 "full-7" org-trim "link=\"" 3 "\" " "\\5" 0 org-freemind-escape-str-from-org org-freemind-org-text-to-freemind-subnode/note "<node " "text=\"" "\"" org-freemind-get-node-style " folded=\"true\"" " position=\"left\"" " background_color=\"" ">\n" "<icon builtin=\"" "\"/>\n" this-m2 prior org-bracket-link-analytic-regexp this-node-end next-node-start drawers-regexp node-notes mm-buffer next-level current-level this-children-visible next-has-some-visible-child base-level num-left-nodes icon --dolist-tail--] 7])
#@234 Check if file FILE already exists.
If FILE does not exists return t.

If INTERACTIVELY is non-nil ask if the file should be replaced
and return t/nil if it should/should not be replaced.

Otherwise give an error say the file exists.
(defalias 'org-freemind-check-overwrite #[(file interactively) "\302!\203	\203\303\304\305\"!\207\306\307\"\207\310\207" [file interactively file-exists-p y-or-n-p format "File %s exists, replace it? " error "File %s already exists" t] 4 (#$ . 12374)])
(defvar org-freemind-node-pattern "^\\(\\*+\\)[[:space:]]+\\(.*?\\)$")
(defalias 'org-freemind-look-for-visible-child #[(node-level) "\212\306 \307\216\310	\2044\311\n\310\312#\2034\313\314!\211G
\fY\203&\315\2020\316\317 \320\"\2040\321*\202	,\321=\207" [save-match-data-internal found-visible-child org-freemind-node-pattern m1 level node-level match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) nil re-search-forward t match-string-no-properties 1 none get-char-property line-beginning-position invisible found] 5])
#@25 Go to line number LINE.
(defalias 'org-freemind-goto-line #[(line) "\214~\210eb\210Sy)\207" [line] 1 (#$ . 13451)])
(defalias 'org-freemind-write-mm-buffer #[(org-buffer mm-buffer node-at-line) "rq\210	\306\211\2036@\211@\f\306<=\307>\310=<
#,\203/\n\211?A@)@A\211\204\f*\311 A\312\216\313B!C\306D\314\211EF\306G\314HIJ\307K\315L\306\211MN\306\211OP\306\211QRrSq\210\316 \210\317T\320c\210\321c\210)\212eb\210\322\323!\210\324\325\306\307#\203\247\326\314\225\327 \"U\330C\331U!\306#C)\202\210\332\333C!\334QDV\203\344\335V!\210\336W!\204\307\337\340V\"\210\341\315!GQ\306y\210\342\343\215RQL\315E\335V!\210\202Peb\210\324W\306\307#\203\341\315!\211XG\211Y\315U\203ETE\202Y\344U\203FTF*\202\347eb\210E\315V\203PEF\314L\f\2033\345\304 !\2025\346 ZrSq\210\347Z\350\351\352\353\354\355[\356\357\360\361\362\261\210*\363F\344\"GLM\306\211\211\211\211\211\211\211\\]^_`abc\324W\306\307#\203)R\203\210`RX\202\211\307\203)\341\315!d\314\225e\314\224_\341\344!`dG^\364\327 \365\"\366=?\211\\\203\265\307\202\271\367^!]c\203\333\370SDGML^cba_]&GE\315U\203\352LMV\202\353\307\203L^Y\203rSq\210\371c\210LJ\203	\344\202\n\315ZL)\202\356eTb`c^L\\a\306u\210*\202s`c^LR\203<RT\202=d_\370SDGML^cba_]&GrSq\210\371c\210.	rSq\210LMV\203\207\371c\210LJ\203\344\202\200\315Z\211L\202k)rSq\210\372c\210\373 \210eb.\207" [org-buffer org-freemind-node-styles node-style --dolist-tail-- buffer-file-name start nil t string-match match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) copy-sequence 0 1 erase-buffer utf-8 "<map version=\"0.9.0\">\n" "<!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->\n" message "Writing Freemind file..." re-search-forward "^#\\+DRAWERS:" buffer-substring-no-properties line-end-position append split-string "^[[:blank:]]*:" regexp-opt ":[[:blank:]]*\n\\(?:.\\|\n\\)*?\n[[:blank:]]*:END:[[:blank:]]*$" org-freemind-goto-line looking-at error "No node at line %s" match-string-no-properties last-line (byte-code "\305\306\307#\205/\310\311!\211G\211X\203!\312 \210\313\314`S\"\210\202+\nTU\203+\fT*\202\207" [org-freemind-node-pattern m1 level node-at-line-level num-top2-nodes re-search-forward nil t match-string-no-properties 1 beginning-of-line throw last-line] 5) 2 file-name-nondirectory buffer-name "<node text=\"" "\" background_color=\"#00bfff\">\n" "<richcontent TYPE=\"NOTE\"><html>" "<head>" "</head>" "<body>" "<p>" "WHOLE FILE" "</p>" "</body>" "</html>" "</richcontent>\n" floor get-char-property invisible outline org-freemind-look-for-visible-child org-freemind-write-node "</node>\n" "</map>" delete-trailing-whitespace string regexp inhibit-changing-match-data x org-freemind-node-style save-match-data-internal org-drawers drawers drawers-regexp num-top1-nodes num-top2-nodes num-left-nodes unclosed-nodes org-odd-levels-only odd-only first-time current-level base-level prev-node-end rich-text unfinished-tag node-at-line-level node-at-line-last mm-buffer buffer-file-coding-system dr-txt node-at-line org-freemind-node-pattern m1 level orig-name org-freemind-org-nfix next-children-visible next-has-some-visible-child next-level next-node-start next-m2 this-children-visible this-node-end this-m2 next-m1 next-node-end] 15])
#@16 NOT READY YET.
(defalias 'org-freemind-get-node-style #[(node-name) "\306\211\n\306\211\205Q\f@\211@\307\310

#\210

\306\311\312#,\203H\211A@)\211\203H\307\313\"\210\314	\")\fA\211\204\f\306,\207" [node-style node-styles org-freemind-node-style style-list --dolist-tail-- node-regexp nil message "node-regexp=%s node-name=%s" t string-match "node-style=%s" append node-name start string regexp inhibit-changing-match-data x] 5 (#$ . 16922)])
(defalias 'org-freemind-do-apply-node-style #[(style-list) "\306\307\"\210\310\311\312\313\314\315\316\211\317\320\211%A@)\321&\211'\205U'@&\306\322&\"\210&@\211(\323=\203Q&\211%A@)\202\375(\324=\203e&\211%A@)\202\375(\325=\203y&\211%A@)\202\375(\326=\203\215&\211%A@)\202\375(\327=\203\241&\211%A@)\202\375(\305=\203\264&\211%A@)\202\375(\304=\203\307&\211%A@)\202\375(\303=\203\332&\211%A@)\202\375(\302=\203\355&\211%A@)\202\375(\301=\203\375&\211%A@)\330\331\"c\210\330\332\"c\210\330\333\"c\210\334c\210\335c\210\330\332\"c\210\330\331\"c\210\330\336
\"c\210\337c\210\340c\210\330\341\f\"c\210\330\342\"c\210\330\343\n\"c\210\330\344	\"c\210)'A\211'\204.\321.\f\207" [style-list font-size font-name bold italic edge-width message "style-list=%S" fork "red" "yellow" "green" bezier thin t "SansSerif" 12 nil "    style=%s" node-style color background-color edge-color edge-style format " style=\"%s\"" " color=\"%s\"" " background_color=\"%s\"" ">\n" "<edge" " width=\"%s\"" "/>\n" "<font" " italic=\"%s\"" " bold=\"%s\"" " name=\"%s\"" " size=\"%s\"" x style --dolist-tail-- what] 11])
#@117 Convert node at line NODE-LINE to the FreeMind file MM-FILE.
See `org-freemind-from-org-mode' for more information.
(defalias 'org-freemind-from-org-mode-node #[(node-line mm-file) "\305\306\307!\"\2050p\310!\311\n	#\210r	q\210\312 \210\306\307!\205/\313	!\210\314\315!\205/\316\f!+\207" [mm-file mm-buffer org-buffer node-line buffer-file-name org-freemind-check-overwrite called-interactively-p any find-file-noselect org-freemind-write-mm-buffer basic-save-buffer switch-to-buffer-other-window y-or-n-p "Show in FreeMind? " org-freemind-show] 4 (#$ . 18600) (progn (if (org-back-to-heading nil) nil (error "Can't find org-mode node start")) (let* ((line (line-number-at-pos)) (default-mm-file (concat (if buffer-file-name (file-name-nondirectory buffer-file-name) "nofile") "-line-" (number-to-string line) ".mm")) (mm-file (read-file-name "Output FreeMind file: " nil nil nil default-mm-file))) (list line mm-file)))])
#@505 Convert the `org-mode' file ORG-FILE to the FreeMind file MM-FILE.
All the nodes will be opened or closed in Freemind just as you
have them in `org-mode'.

Note that exporting to Freemind also gives you an alternative way
to export from `org-mode' to html.  You can create a dynamic html
version of the your org file, by first exporting to Freemind and
then exporting from Freemind to html.  The 'As
XHTML (JavaScript)' version in Freemind works very well (and you
can use a CSS stylesheet to style it).
(defalias 'org-freemind-from-org-mode #[(org-file mm-file) "\305\306\307!\"\205:	\203\310	!\202p\310!\311\n\312#\210r\nq\210\313 \210\306\307!\2059\314\n!\210\315\316!\2059\317\f!+\207" [mm-file org-file mm-buffer org-buffer buffer-file-name org-freemind-check-overwrite called-interactively-p any find-file-noselect org-freemind-write-mm-buffer nil basic-save-buffer switch-to-buffer-other-window y-or-n-p "Show in FreeMind? " org-freemind-show] 4 (#$ . 19538) (let* ((org-file buffer-file-name) (default-mm-file (concat (if org-file (file-name-nondirectory org-file) "nofile") ".mm")) (mm-file (read-file-name "Output FreeMind file: " nil nil nil default-mm-file))) (list org-file mm-file))])
#@69 Convert visible part of buffer ORG-BUFFER to FreeMind file MM-FILE.
(defalias 'org-freemind-from-org-sparse-tree #[(org-buffer mm-file) "\305\306\307!\"\205=\310\311!\312 \313\216\314\315\310\"\210p*\316\n	\310#\210r	q\210\317 \210\306\307!\205<\320	!\210\321\322!\205<\323\f!+\207" [mm-file mm-buffer org-buffer #1=#:wconfig buffer-file-name org-freemind-check-overwrite called-interactively-p any nil find-file-noselect current-window-configuration ((set-window-configuration #1#)) org-export-visible 32 org-freemind-write-mm-buffer basic-save-buffer switch-to-buffer-other-window y-or-n-p "Show in FreeMind? " org-freemind-show] 4 (#$ . 20755) (let* ((org-file buffer-file-name) (default-mm-file (concat (if org-file (file-name-nondirectory org-file) "nofile") "-sparse.mm")) (mm-file (read-file-name "Output FreeMind file: " nil nil nil default-mm-file))) (list (current-buffer) mm-file))])
(defalias 'org-freemind-lt-symbols #[(sym-a sym-b) "\302!\302	!\231\207" [sym-a sym-b symbol-name] 3])
(defalias 'org-freemind-lt-xml-attrs #[(attr-a attr-b) "\302@!\302	@!\231\207" [attr-a attr-b symbol-name] 3])
#@94 Return t if downcased names of SYM-A and SYM-B are equal.
SYM-A and SYM-B should be symbols.
(defalias 'org-freemind-symbols= #[(sym-a sym-b) "	=\206\302!\227\302	!\227\230\207" [sym-a sym-b symbol-name] 3 (#$ . 21881)])
(put 'org-freemind-symbols= 'byte-optimizer 'byte-compile-inline-expand)
#@143 Find children node to PARENT from PATH.
PATH should be a list of steps, where each step has the form

  '(NODE-NAME (ATTR-NAME . ATTR-VALUE))
(defalias 'org-freemind-get-children #[(parent path) "@<\204\211AA)\202C\306\306\211\203@\f@\211\211AA)\306\211\2038\f@\307\302
\"\210\fA\211\204)*\fA\211\204*\n)@\211<\203U@\202W<\205e\310A\311\"A\306\306\211\2030\f@\211;\204)\203\246@\211=\206\242\312!\227\312!\227\230*\203)\204\264\307\313\"\210\202)\211A@)\314!\306\211\203\f@\211@@)@\211=\206\361\312!\227\312!\227\230*\203\211@A)A\211\203\230\203A*\fA\211\204\315*\204(\307\313\"\210*\fA\211\204y*\203?\315\"\202A.\207" [parent x cs p --dolist-tail-- c nil add-to-list sort org-freemind-lt-xml-attrs symbol-name path-children copy-sequence org-freemind-get-children children path step step-node step-attr-list path-tail child sym-b sym-a child-attr-list step-attr-copy child-attr child-val step-val] 4 (#$ . 22186)])
(defalias 'org-freemind-get-richcontent-node #[(node) "\302\303\"\211G\304V\203\305\306\307\310#\210	@)\207" [node rc-nodes org-freemind-get-children ((richcontent (type . "NODE")) html body) 1 lwarn t :warning "Unexpected structure: several <richcontent type=\"NODE\" ...>"] 5])
(defalias 'org-freemind-get-richcontent-note #[(node) "\302\303\"\211G\304V\203\305\306\307\310#\210	@)\207" [node rc-notes org-freemind-get-children ((richcontent (type . "NOTE")) html body) 1 lwarn t :warning "Unexpected structure: several <richcontent type=\"NOTE\" ...>"] 5])
(defalias 'org-freemind-test-get-tree-text #[nil "\301\302!)\207" [node (p nil "\n" (a ((href . "link")) "text") "\n" (b nil "hej") "\n") org-freemind-get-tree-text] 2])
(defalias 'org-freemind-get-tree-text #[(node) "\205\255\306\307\211\307\211\203\230
@\310\f\311\"\203!\312\202\221\313\f\314\"\203-\315\202\221\f;\203Q\f\316\230\203:\306\n\203J\317\n\320\f\321\260\202\221\fP\202\221\f\203\221\f<\203\221\f@9\203i\322\f!P\202\221\f\307\211\203\220
@\211@A\211\323=\203\210*
A\211\204r*
A\211\204*	\203\247\324	\325\"P\202\253\326P+\207" [node lf-after link ntxt n --dolist-tail-- "" nil memql (h1 h2 h3 h4 h5 h6 p) 2 eql br 1 "\n" "[[" "][" "]]" org-freemind-get-tree-text href make-string 10 " " att-val val att] 7])
#@54 Get the node text as from the richcontent node NODE.
(defalias 'org-freemind-get-richcontent-node-text #[(node) "\303 \304\216\305	!\306\n!+\207" [save-match-data-internal node rc match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) org-freemind-get-richcontent-node org-freemind-get-tree-text] 3 (#$ . 24621)])
#@54 Get the node text as from the richcontent note NODE.
(defalias 'org-freemind-get-richcontent-note-text #[(node) "\303 \304\216\305	!\211\205\306\n!+\207" [save-match-data-internal node rc match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) org-freemind-get-richcontent-note org-freemind-get-tree-text] 3 (#$ . 24985)])
(defalias 'org-freemind-get-icon-names #[(node) "\306\307\"\310	\310\211\203%\f@\311\211A@)\236A\nB\fA\211\204*\n*\207" [node icon-nodes names icn --dolist-tail-- x org-freemind-get-children ((icon)) nil builtin] 4])
(defalias 'org-freemind-node-to-org #[(node level skip-levels) "@\211A@)\306\307!\310\311!\211AA)*+,\312-.ZW\203+\306/\2110\203b0@/\313/@\314\"\203K/A*\202Y\313/@\315\"\203Y/A*0A\2110\2045**\204m\316!*\203\321\317\235\203}\320*P*\321\235\203\211\322*P*\323\235\203\225\324*P*\325\235\203\241\326*P*\327\235\203\255\330*P*\331\235\203\271\332*P*\333\235\203\305\334*P*\335\235\203\321\336*P*
\203\355\f
\312\fGO\230\203\355\337\340\341*#\211*c\210\202\313,\342\"\203\343-.Z\344\"\345*\346\261\210
\203\347
\350\261\210\n\3061\2110\205;0@\2111\20311;\2041\3511-T.#\2100A\2110\204\306.	\207" [node x children icons mark note nil org-freemind-get-richcontent-note-text "-- This is more about " org-freemind-get-icon-names 0 memql 'TEXT 'text org-freemind-get-richcontent-node-text "full-1" "[#A] " "full-2" "[#B] " "full-3" "[#C] " "full-4" "[#D] " "full-5" "[#E] " "full-6" "[#F] " "full-7" "[#G] " "button_cancel" "TODO " replace-regexp-in-string "\n $" "" 'node make-string 42 " " "\n" ":COMMENT:\n" "\n:END:\n" org-freemind-node-to-org text attributes qname level skip-levels attrib --dolist-tail-- child] 8])
#@60 Convert FreeMind file MM-FILE to `org-mode' file ORG-FILE.
(defalias 'org-freemind-to-org-mode #[(mm-file org-file) "\306\307\310!\"\205Z\311	!\311!rq\210\312	!\211@AA\211A@)\313!\211\203:\314\315\"\203:\316\202;\317r\nq\210\320 \210\321\316#\210eb\210\322\323\211\"\210)\324\n!.\207" [org-file mm-file org-buffer mm-buffer xml-list x org-freemind-check-overwrite called-interactively-p any find-file-noselect xml-parse-file org-freemind-get-richcontent-note-text string-match "^--org-mode: WHOLE FILE$" 1 0 erase-buffer org-freemind-node-to-org org-set-tags t switch-to-buffer-other-window top-node note skip-levels] 5 (#$ . 26804) (byte-code "\304 \305\216\306 \307	!\310P\311\312\313\211\211\n%	-D\207" [save-match-data-internal mm-file default-org-file org-file match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) buffer-file-name file-name-nondirectory ".org" read-file-name "Output org-mode file: " nil] 6)])
(provide 'org-freemind)

MMCT - 2023