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-mobile.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:07:48 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/org/org-mobile.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\303\304\305\306\307\310\311\301&\210\312\313\314\315\311\304\316\317&\210\312\320\321\322\311\304\323\324\316\325&	\210\312\326\321\327\311\304\316\330&\210\312\331\305\332\311\304\323\324\316\333&	\210\312\334\335\336\311\304\323\324\316\330&	\210\312\337\321\340\311\304\323\324\316\341&	\207" [require org org-agenda custom-declare-group org-mobile nil "Options concerning support for a viewer/editor on a mobile device." :tag "Org Mobile" :group custom-declare-variable org-mobile-files '(org-agenda-files) "Files to be staged for MobileOrg.\nThis is basically a list of files and directories.  Files will be staged\ndirectly.  Directories will be search for files with the extension `.org'.\nIn addition to this, the list may also contain the following symbols:\n\norg-agenda-files\n     This means include the complete, unrestricted list of files given in\n     the variable `org-agenda-files'.\norg-agenda-text-search-extra-files\n     Include the files given in the variable\n     `org-agenda-text-search-extra-files'" :type (list :greedy t (option (const :tag "org-agenda-files" org-agenda-files)) (option (const :tag "org-agenda-text-search-extra-files" org-agenda-text-search-extra-files)) (repeat :inline t :tag "Additional files" (file))) org-mobile-files-exclude-regexp "" "A regexp to exclude files from `org-mobile-files'." :version "24.1" regexp org-mobile-directory "The WebDAV directory where the interaction with the mobile takes place." directory org-mobile-use-encryption "Non-nil means keep only encrypted files on the WebDAV server.\nEncryption uses AES-256, with a password given in\n`org-mobile-encryption-password'.\nWhen nil, plain files are kept on the server.\nTurning on encryption requires to set the same password in the MobileOrg\napplication.  Before turning this on, check of MobileOrg does already\nsupport it - at the time of this writing it did not yet." boolean org-mobile-encryption-tempfile "~/orgtmpcrypt" "File that is being used as a temporary file for encryption.\nThis must be local file on your local machine (not on the WebDAV server).\nYou might want to put this file into a directory where only you have access." org-mobile-encryption-password "Password for encrypting files uploaded to the server.\nThis is a single password which is used for AES-256 encryption.  The same\npassword must also be set in the MobileOrg application.  All Org files,\nincluding mobileorg.org will be encrypted using this password.\n\nSECURITY CONSIDERATIONS:\n\nNote that, when Org runs the encryption commands, the password could\nbe visible briefly on your system with the `ps' command.  So this method is\nonly intended to keep the files secure on the server, not on your own machine.\n\nAlso, if you set this variable in an init file (.emacs or .emacs.d/init.el\nor custom.el...) and if that file is stored in a way so that other can read\nit, this also limits the security of this approach.  You can also leave\nthis variable empty - Org will then ask for the password once per Emacs\nsession." (string :tag "Password")] 10)
(defvar org-mobile-encryption-password-session nil)
(defalias 'org-mobile-encryption-password #[nil "\302!\206\302	!\206\303\304\305\"\211\207" [org-mobile-encryption-password org-mobile-encryption-password-session org-string-nw-p read-passwd "Password for MobileOrg: " t] 3])
#@304 The file where captured notes and flags will be appended to.
During the execution of `org-mobile-pull', the file
`org-mobile-capture-file' will be emptied it's contents have
been appended to the file given here.  This file should be in
`org-directory', and not in the staging area or on the web server.
(custom-declare-variable 'org-mobile-inbox-for-pull "~/org/from-mobile.org" '(#$ . 3944) :group 'org-mobile :type 'file)
#@133 The capture file where the mobile stores captured notes and flags.
This should not be changed, because MobileOrg assumes this name.
(defconst org-mobile-capture-file "mobileorg.org" (#$ . 4375))
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\311\312\304\305\313\314\306\315&	\210\300\316\317\320\304\305\306\321&\210\300\322\323\324\304\305\306\325&\210\300\326\327\330\304\305\306\331&\210\300\332\333\334\304\305\306\335&\207" [custom-declare-variable org-mobile-index-file "index.org" "The index file with links to all Org files that should be loaded by MobileOrg.\nRelative to `org-mobile-directory'.  The Address field in the MobileOrg setup\nshould point to this file." :group org-mobile :type file org-mobile-agendas 'all "The agendas that should be pushed to MobileOrg.\nAllowed values:\n\ndefault  the weekly agenda and the global TODO list\ncustom   all custom agendas defined by the user\nall      the custom agendas and the default ones\nlist     a list of selection key(s) as string." :version "24.1" (choice (const :tag "Default Agendas" default) (const :tag "Custom Agendas" custom) (const :tag "Default and Custom Agendas" all) (repeat :tag "Selected" (string :tag "Selection Keys"))) org-mobile-force-id-on-agenda-items t "Non-nil means make all agenda items carry an ID." boolean org-mobile-force-mobile-change nil "Non-nil means force the change made on the mobile device.\nSo even if there have been changes to the computer version of the entry,\nforce the new value set on the mobile.\nWhen nil, mark the entry from the mobile with an error message.\nInstead of nil or t, this variable can also be a list of symbols, indicating\nthe editing types for which the mobile version should always dominate." (choice (const :tag "Always" t) (const :tag "Never" nil) (set :greedy t :tag "Specify" (const todo) (const tags) (const priority) (const heading) (const body))) org-mobile-action-alist '(("edit" org-mobile-edit data old new)) "Alist with flags and actions for mobile sync.\nWhen flagging an entry, MobileOrg will create entries that look like\n\n  * F(action:data)  [[id:entry-id][entry title]]\n\nThis alist defines that the ACTION in the parentheses of F() should mean,\ni.e. what action should be taken.  The :data part in the parenthesis is\noptional.  If present, the string after the colon will be passed to the\naction form as the `data' variable.\nThe car of each elements of the alist is an actions string.  The cdr is\nan Emacs Lisp form that will be evaluated with the cursor on the headline\nof that entry.\n\nFor now, it is not recommended to change this variable." (repeat (cons (string :tag "Action flag") (sexp :tag "Action form"))) org-mobile-checksum-binary (or (executable-find "shasum") (executable-find "sha1sum") (executable-find "md5sum") (executable-find "md5")) "Executable used for computing checksums of agenda files." string] 10)
#@279 Hook run before running `org-mobile-push'.
This could be used to clean up `org-mobile-directory', for example to
remove files that used to be included in the agenda but no longer are.
The presence of such files would not really be a problem, but after time
they may accumulate.
(defvar org-mobile-pre-push-hook nil (#$ . 7278))
#@297 Hook run after running `org-mobile-push'.
If Emacs does not have direct write access to the WebDAV directory used
by the mobile device, this hook should be used to copy all files from the
local staging directory `org-mobile-directory' to the WebDAV directory,
for example using `rsync' or `scp'.
(defvar org-mobile-post-push-hook nil (#$ . 7613))
#@286 Hook run before executing `org-mobile-pull'.
If Emacs does not have direct write access to the WebDAV directory used
by the mobile device, this hook should be used to copy the capture file
`mobileorg.org' from the WebDAV location to the local staging
directory `org-mobile-directory'.
(defvar org-mobile-pre-pull-hook nil (#$ . 7967))
#@307 Hook run after running `org-mobile-pull', only if new items were found.
If Emacs does not have direct write access to the WebDAV directory used
by the mobile device, this hook should be used to copy the emptied
capture file `mobileorg.org' back to the WebDAV directory, for example
using `rsync' or `scp'.
(defvar org-mobile-post-pull-hook nil (#$ . 8309))
#@62 List of files containing entries flagged in the latest pull.
(defvar org-mobile-last-flagged-files nil (#$ . 8672))
(defvar org-mobile-files-alist nil)
(defvar org-mobile-checksum-files nil)
(defalias 'org-mobile-prepare-file-lists #[nil "\300 \302\211\207" [org-mobile-files-alist org-mobile-checksum-files nil] 2])
#@131 Expand the list in `org-mobile-files' to a list of existing files.
Also exclude files matching `org-mobile-files-exclude-regexp'.
(defalias 'org-mobile-files-alist #[nil "\301\235\205
\306	\235\205
\307\310\311\312\313\"\"\314\315\312\316\"\"\317\320\f!!\321\322
!P\315\211\315\211\315\211A@\211\203\216\323!\204S\324\f\"\320!\211\235\204:B\325\"\203{\326\225\315O\202\201\327!BB\202:\237.\n\207" [org-mobile-files org-agenda-text-search-extra-files include-archives files org-directory orgdir-uname agenda-archives t apply append mapcar #[(f) "\303=\203\303\304	\"\207\302=\203\305\306\307\n!\"\207;\203)\310!\203)\311\312\313#\207;\2037\314!\2037C\207\315\207" [f include-archives org-agenda-text-search-extra-files org-agenda-files t delq agenda-archives copy-sequence file-directory-p directory-files full "\\.org\\'" file-exists-p nil] 4] delete nil #[(f) "\302\230?\205\303	\"?\205	\207" [org-mobile-files-exclude-regexp f "" string-match] 3] file-name-as-directory file-truename "\\`" regexp-quote file-name-absolute-p expand-file-name string-match 0 file-name-nondirectory orgdir-re uname seen rtn file link-name] 6 (#$ . 8998)])
#@199 Push the current state of Org affairs to the target directory.
This will create the index file, copy all agenda files there, and also
create all custom agenda views, for upload to the mobile phone.
(defalias 'org-mobile-push #[nil "\306!\307\n\212\310 \311\216\312\313!\210\314 \210\315 \210\316\317!\210\320\321\322%\"&'\323 \210*\316\324!\210\325 \210\316\326!\210\327 \210\316\330!\210\331 \210\316\332!\210\333 \210\312\334!\210+\f\f(,\335 \210\336	!\203~\337	!\204k\340	!\210\202~\341 )\342\337	!!\210\343 \210\342)!\210))\316\344!\207" [org-agenda-buffer-name a-buffer org-agenda-tag-filter org-agenda-redo-command org-agenda-curbuf-name #1=#:wconfig get-buffer "*SUMO*" current-window-configuration ((set-window-configuration #1#)) run-hooks org-mobile-pre-push-hook org-mobile-check-setup org-mobile-prepare-file-lists message "Creating agendas..." t mapcar car org-mobile-create-sumo-agenda "Creating agendas...done" org-save-all-org-buffers "Copying files..." org-mobile-copy-agenda-files "Writing index file..." org-mobile-create-index-file "Writing checksums..." org-mobile-write-checksums org-mobile-post-push-hook redraw-display buffer-live-p get-buffer-window kill-buffer selected-window select-window org-agenda-redo "Files for mobile viewer staged" org-mobile-files-alist org-agenda-files inhibit-redisplay org-agenda-this-buffer-name cw] 4 (#$ . 10236) nil])
#@178 Hook that is run after content was moved to `org-mobile-inbox-for-pull'.
The inbox file is visited by the current buffer, and the buffer is
narrowed to the newly captured data.
(defvar org-mobile-before-process-capture-hook nil (#$ . 11639))
#@178 Pull the contents of `org-mobile-capture-file' and integrate them.
Apply all flagged actions, flag entries to be flagged and then call an
agenda view showing the flagged items.
(defalias 'org-mobile-pull #[nil "\305 \210\306\307!\210\310 \311!\204\312\313!\202l\212\311	!\203$\314	!q\210\212	\206*`b\210\214`d}\210\306\315!\210,\212\311\n!\203D\314\n!q\210\212\n\206J`b\210\316`d\"\210+\317\211\223\210\306\320!\210\205l\321\322\323#\210\324\325\317\326\"))\207" [insertion-marker #1=#:--mpom #2=#:--mpom org-mobile-last-flagged-files org-agenda-keep-restricted-file-list org-mobile-check-setup run-hooks org-mobile-pre-pull-hook org-mobile-move-capture markerp message "No new items" marker-buffer org-mobile-before-process-capture-hook org-mobile-apply nil org-mobile-post-pull-hook put org-agenda-files org-restrict t org-agenda "?"] 4 (#$ . 11888) nil])
#@48 Check if org-mobile-directory has been set up.
(defalias 'org-mobile-check-setup #[nil "\306 \210\203;\203\307\310\"\203\311!\203\312!\204#\313\314!\210	\203?	;\203?\307\310	\"\203?\311	!\203?\312	!\204C\313\315!\210\n\203[\n;\203[\307\310\n\"\203[\311\316\n!!\204_\313\317!\210\203j\307\310\"\204n\313\320!\210\f\205\223\307\310\321 \"\204~\313\322!\210\323
!\204\211\313\324
\"\210\325\326!?\205\223\313\327!\207" [org-directory org-mobile-directory org-mobile-inbox-for-pull org-mobile-checksum-binary org-mobile-use-encryption org-mobile-encryption-tempfile org-mobile-cleanup-encryption-tempfile string-match "\\S-" file-exists-p file-directory-p error "Please set `org-directory' to the directory where your org files live" "Variable `org-mobile-directory' must point to an existing directory" file-name-directory "Variable `org-mobile-inbox-for-pull' must point to a file in an existing directory" "No executable found to compute checksums" org-mobile-encryption-password "To use encryption, you must set `org-mobile-encryption-password'" file-writable-p "Cannot write to encryption tempfile %s" executable-find "openssl" "OpenSSL is needed to encrypt files"] 3 (#$ . 12770)])
#@47 Write the index file in the WebDAV directory.
(defalias 'org-mobile-create-index-file #[nil "\306\307!\310\"\311\312!\311\313!\314	\n\"\315\211\211\211\211\211\211\211\211\211456789:;<=>=@;\203A\316=BC=\317\320\321>\"!\210\322?!7\3237\322@!\"8\322A!5\320\321\324\320\321>\"!\"6B\203uC\202w;\325\326\327!!DE\330\216rDq\210=\211A=@\2114\203\302\331c\210\320\3324A\"\333\334\335
\336#\337\261\210\340
\235\323\f
\"\3238\"8\323\f7\"7\202\2078\204\3147\203\336\333\334\3358\336#\341\334\3357\336#\337\261\210\320\342<\"<\343\315<\"<\323<6\"6\3066\344\"6\345<6\315#6\346\334\3356\336#\337\261\210\347\334\3355\336#\337\261\210\350\337\261\210\351\314\n\352\"!\203+\353c\210>\211A>@\2114\203M4@:4A9\354\3559\211#c\210\202+	\356\357 !BFBF)rDq\210\360\315\211E\315\361%\210,B\205v\362C;\"\210\363 .\207" [org-mobile-files-alist org-mobile-index-file org-mobile-directory twds dwds kwds sort copy-sequence #[(a b) "A	A\231\207" [a b] 2] default-value org-todo-keywords org-tag-alist expand-file-name nil sequence org-agenda-prepare-buffers mapcar car org-uniquify org-delete-all org-global-tags-completion-table get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) "#+READONLY\n" #[(x) "\301\302\"\203
\303\211\224O\207\207" [x string-match "(" 0] 3] "#+TODO: " mapconcat identity " " "\n" "|" " | " #[(x) "\204\301\207;\203
\207@\302=\203\303\207@\304=\203\305\207@\306=\203(\301\207<\205/@\207" [x nil :startgroup "{" :endgroup "}" :newline] 2] delq #[(a b) "\227	\227\231\207" [a b] 2] append "#+TAGS: " "#+DRAWERS: " "#+ALLPRIORITIES: A B C" file-exists-p "agendas.org" "* [[file:agendas.org][Agenda Views]]\n" format "* [[file:%s][%s]]\n" md5 buffer-string write-region 0 org-mobile-encrypt-and-move org-mobile-cleanup-encryption-tempfile entry drawers tags done-kwds todo-kwds link-name file target-file def-tags def-todo files-alist org-done-keywords-for-agenda org-todo-keywords-for-agenda org-drawers-for-agenda org-mobile-use-encryption org-mobile-encryption-tempfile #1# #2=#:temp-file org-mobile-checksum-files] 14 (#$ . 13991)])
#@57 Copy all agenda files to the stage or WebDAV directory.
(defalias 'org-mobile-copy-agenda-files #[nil "\306\211\211\211\211\211\211 !!\211A!@\211\203y
@ 
A\307 !\203\310\f\"\"\311!\312\n!\204B\313\n\314\"\210#\203P\315 \"\210\202W\316 \317#\210\320$\321\322\310 !!Q!\323\324	\"\203\f\325\326	\"B%B%\202\310&\"\" \212\327 !edU\203\245\330c\210\331 \210#\203\245\332'!\210\315' \"\210&\333\334 !B%B%)\335 \210\336!.\207" [org-mobile-files-alist check target-dir target-path link-name entry nil file-exists-p expand-file-name file-name-directory file-directory-p make-directory parents org-mobile-encrypt-and-move copy-file ok-if-exists shell-command-to-string " " shell-quote-argument string-match "[a-fA-F0-9]\\{30,40\\}" match-string 0 find-file "\n" save-buffer write-file md5 buffer-string org-mobile-cleanup-encryption-tempfile kill-buffer buf file files-alist org-mobile-directory org-mobile-use-encryption org-mobile-checksum-binary org-mobile-checksum-files org-mobile-capture-file org-mobile-encryption-tempfile] 8 (#$ . 16246)])
#@123 Create checksums for all files in `org-mobile-directory'.
The table of checksums is written to the file mobile-checksums.
(defalias 'org-mobile-write-checksums #[nil "\306\307\"	\310\211\211\211\311\312\313!!\314\216rq\210\315\316\310\"\210
\211A@\211\205>\f@\fA\317\320\n#c\210\202$)rq\210\321\310\211\310\322%\210.	\207" [org-mobile-directory org-mobile-checksum-files sum file entry files expand-file-name "checksums.dat" nil get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) set-buffer-file-coding-system undecided-unix format "%s  %s\n" write-region 0 sumfile #1# #2=#:temp-file] 8 (#$ . 17348)])
#@69 Return an agenda custom command that comprises all custom commands.
(defalias 'org-mobile-sumo-agenda-command #[nil "\306\307\310\311\"\"\312\307\211\211\211\211\211\211\211\211\211\211\211\211\211,-./01234567\313=\203?64\202\2177\314=\203M54\202\2177\315=\203w64\316\3174\"\204f\3204B4\316\3214\"\204\217\3224B4\202\2177<\203\217\32365\"4\306\307\310\3247\"\"44\211A4@\2111\203\2451A;\204\217\32518\326=\204\217\32518\327>\204\217\32518\330>\203\317\33118\203\217\332\333\33118\"\203\217\32518\334>\203)1@01A@/\32518.\33118-\33518,\336\3370\340/;\203
/G\341V\203
/\202\342.!\343\260D,B,.-,E2B2\202\217\344\32518!\204\217\325189\204\2171@1A@\33118\32518\341
\211A@\2111\203\2171@.1A@-\32518,\345\230\203v-\202w3\323\n,\",\336\337\f\346\347	T\211!\3403\343\260D,B,.-,E2B2\202O2\205\262\350\351\3522!\353F.\207" [org-agenda-custom-commands cnt gsettings gdesc gkey cmds delq nil mapcar #[(x) "A;\203\301\207A@;\203\207A@\204#@\302\211AA)BB\207@\302ABB\207" [x nil #1=""] 4] (("a" "Agenda" agenda) ("t" "All TODO" alltodo)) custom default all assoc "t" ("t" "ALL TODO" alltodo) "a" ("a" "Agenda" agenda) append #[(k) "\302	\"\207" [k thelist assoc] 3] 2 search (todo-tree tags-tree occur-tree) (todo tags tags-todo) 3 string-match "\\S-" (agenda alltodo todo tags tags-todo) 4 org-agenda-title-append "<after>KEYS=" " TITLE: " 0 symbol-name "</after>" functionp #1# "#" number-to-string "X" "SUMO" reverse ((org-agenda-compact-blocks nil)) settings match type desc key e new atitle thelist default-list custom-list org-mobile-agendas] 16 (#$ . 18081)])
(defvar org-mobile-creating-agendas nil)
(defalias 'org-mobile-write-agenda-for-mobile #[(file) "\306 \307\211\211\211\211\211\211\211\211@ABCD\310\311\312!!EF\313\216rEq\210\314 \210\315c\210Cc\210eb\210m\204=\316\317!\2046\316\320!\203P`\321 |\210\2026\322`\323\"\203\214\307B\322`\324\"\322`\325\"\211\203x\316\326!\203x\327\n\307\330#\210\331\332!\210\203\206\332\210c\210\331\332!\210\333c\210\2026\322`\334\"\203\234\330B\335c\210\2026\322`\336\"\206\247\322`\337\"\211\2036\322`\340\"\341\235\342`\321 \343\330$\211@\203\343\344`@{!\344@\321 {!\345 \321 |\210\f\346
\347\261\210\331\332!\210\202\355\316\350!\203\355\327\351!\210B\203\366\352\202\367\353c\210\332\210\354c\210\2046\355	\356\357\360$\354\261\210\361\362!\2032\203\363	\364\"\202)\365	\366\"\206)\367	!\211A\2036\370A\371\261\210\331\372!\210\2028\373\374\306 !BGBG)rEq\210\375\307\211F\307\376%\210,\377\201HD\".\n\207" [sexp m short app line prefix buffer-string nil get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) org-mode "#+READONLY\n" looking-at "[ 	]*$" "=+$" point-at-eol get-text-property org-agenda-structural-header org-agenda-title-append short-heading ".+" replace-match t beginning-of-line 1 "* " org-agenda-date-header "** " org-hd-marker org-marker type ("diary" "sexp") text-property-any org-heading org-trim point-at-bol "<before>" "</before>" "[ 	]+" "" "***  " "**  " "\n" org-agenda-get-some-entry-text 10 "   " planning boundp org-mobile-force-id-on-agenda-items org-id-get create org-entry-get "ID" org-mobile-get-outline-path-link "   :PROPERTIES:\n   :ORIGINAL_ID: " "\n   :END:\n" 2 "agendas.org" md5 write-region 0 message pl id in-date all file #1# #2=#:temp-file org-mobile-checksum-files "Agenda written to Org file %s"] 11])
(defalias 'org-mobile-get-outline-path-link #[(pom) "\212\303	!\203\304	!q\210\212	\206`b\210\305\306\307\n!!\310\311\306\312 \310#\310\306\313\314 8!\260+\207" [pom #1=#:--mpom buffer-file-name markerp marker-buffer "olp:" org-mobile-escape-olp file-name-nondirectory "/" mapconcat org-get-outline-path 4 org-heading-components] 8])
(defalias 'org-mobile-escape-olp #[(s) "\302\303	\")\207" [table s (58 47) org-link-escape] 3])
#@54 Create a file that contains all custom agenda views.
(defalias 'org-mobile-create-sumo-agenda #[nil "\306\307\"\n\203
\202	\310 \311
\fCC\"C\312\313\f!\204)\314\315\f\"\210
\2030\316 \210\n\205?\317\f	\"\210\320\f!\210\321 -\207" [org-mobile-directory file org-mobile-use-encryption org-mobile-encryption-tempfile file1 sumo expand-file-name "agendas.org" org-mobile-sumo-agenda-command append t file-writable-p error "Cannot write to file %s" org-store-agenda-views org-mobile-encrypt-and-move delete-file org-mobile-cleanup-encryption-tempfile org-agenda-custom-commands org-mobile-creating-agendas] 3 (#$ . 22131) nil])
#@177 Encrypt INFILE locally to INFILE_enc, then move it to OUTFILE.
We do this in two steps so that remote paths will work, even if the
encryption program does not understand them.
(defalias 'org-mobile-encrypt-and-move #[(infile outfile) "\303P\304	\"\210\n\205\305	\n\306#\210\307	!)\207" [infile encfile outfile "_enc" org-mobile-encrypt-file copy-file ok-if-exists delete-file] 4 (#$ . 22776)])
#@68 Encrypt INFILE to OUTFILE, using `org-mobile-encryption-password'.
(defalias 'org-mobile-encrypt-file #[(infile outfile) "\302\303\304\305\306\307 P!\305\310!!\305\310	!!$!\207" [infile outfile shell-command format "openssl enc -aes-256-cbc -salt -pass %s -in %s -out %s" shell-quote-argument "pass:" org-mobile-encryption-password expand-file-name] 8 (#$ . 23181)])
#@68 Decrypt INFILE to OUTFILE, using `org-mobile-encryption-password'.
(defalias 'org-mobile-decrypt-file #[(infile outfile) "\302\303\304\305\306\307 P!\305\310!!\305\310	!!$!\207" [infile outfile shell-command format "openssl enc -d -aes-256-cbc -salt -pass %s -in %s -out %s" shell-quote-argument "pass:" org-mobile-encryption-password expand-file-name] 8 (#$ . 23555)])
#@46 Remove the encryption tempfile if it exists.
(defalias 'org-mobile-cleanup-encryption-tempfile #[nil ";\205\301!\205\302!\207" [org-mobile-encryption-tempfile file-exists-p delete-file] 2 (#$ . 23932)])
#@171 Move the contents of the capture file to the inbox file.
Return a marker to the location where the new content has been added.
If nothing new has been added, return nil.
(defalias 'org-mobile-move-capture #[nil "\306\307	\n\"\310\f!\204\310!\202-\311 \210\312P\313\"\210\314\"\210\310!\315 \306\211rq\210\316 \317\320\"\211\203x
q\210~\210db\210n\204\\\321 \210`c\210\306\223\210\322 \210q\210\323 \210\322 \210\324\316 !\210)\325!\210\203\214\326\"\210\311 \210\205\223.\207" [encfile org-mobile-capture-file org-mobile-directory capture-file org-mobile-inbox-for-pull inbox-buffer nil expand-file-name find-file-noselect org-mobile-cleanup-encryption-tempfile "_enc" copy-file org-mobile-decrypt-file make-marker buffer-string string-match "\\S-" newline save-buffer erase-buffer org-mobile-update-checksum-for-capture-file kill-buffer org-mobile-encrypt-and-move org-mobile-use-encryption org-mobile-encryption-tempfile capture-buffer insertion-point not-empty content] 4 (#$ . 24149) nil])
#@62 Find the checksum line and modify it to match BUFFER-STRING.
(defalias 'org-mobile-update-checksum-for-capture-file #[(buffer-string) "\305\306\"\307	!\211\2054r\nq\210\310\311\312!\313Q\314\315#\2030\316\224b\210\316\224\316\225|\210\317\f!c\210\320 \210)\321\n!*\207" [org-mobile-directory file buffer org-mobile-capture-file buffer-string expand-file-name "checksums.dat" find-file-noselect re-search-forward "\\([0-9a-fA-F]\\{30,\\}\\).*?" regexp-quote "[ 	]*$" nil t 1 md5 save-buffer kill-buffer] 5 (#$ . 25206)])
#@105 Apply all change requests in the current buffer.
If BEG and END are given, only do this in that region.
(defalias 'org-mobile-apply #[(&optional beg end) "\306\307!\210\310	\206e\n\206d	b\210\311\312\n\313#\203$\314\315!\210\202\316 \316 \316 \n\310\223\317\211\211\211\310\211\211 !	b\210\311\320\n\313#\203m\321\225\321\224Z\322Y\203G\323\321!\317\322O\227\324\232\204GT\202G	b\210\311\325\n\313#\203\326\327\215\210\202p\330 \210!\310\211\223\210\n\310\211\223\210\331\332%\210\333\321!.\n\207" [org-mobile-last-flagged-files beg end org-mobile-error id-pos buf-list require org-archive nil re-search-forward "^\\*\\* Note ID: [-0-9A-F]+[ 	]*\n" t replace-match #1="" make-marker 0 "^\\* \\(.*\\)" 1 2 match-string "f(" "^\\*+[ 	]+F(\\([^():\n]*\\)\\(:\\([^()\n]*\\)\\)?)[ 	]+\\[\\[\\(\\(id\\|olp\\):\\([^]\n]+\\)\\)" next (byte-code "\306\307!\310\225\205\f\306\310!\311\312\313\217\314 \212\315\316\211\")\317\232\203&\320\202/
T\3211\"A2\317\232\205<\322 T\f{\3233\324\21145b\210\325\n!\203g\326\n!6\235\204g\327\326\n!!\210\326\n!6B6\325\n!\204\215\330\314 \\b\210\n;\203\200\n\331\261\210\202\203\332c\2107T7\333\334\316\"\2102\204\237\335c\2107T7\333\334\316\"\2108`\324\223\210\336\337\f\316#\203\267\340\225T\341 \210`{4\336\342\f\316#\203\320\340\225T\341 \210m\203\314\343 \210`{54\205\337\344\3454\"\205\337445\205\360\344\3455\"\205\36055\203\fG\340V\203\f\346\347\350\351!\352\"\353#	\354\232\204(5\205\3515!54\205&\3514!4\3308\\b\2109`\324\223\210\324:\212\311\355\356\217\210):\203l\357\3269!!\2109b\2107T7:A@;\203b:A@\202c\360\331\261\210\333\334\316\"\2108b\210`\315\316\211\"|\210.\n\324\207" [action data id-pos bos eos cnt-edit match-string 1 3 msg (byte-code "\300\301\302!!\207" [org-mobile-locate-entry match-string 4] 3) ((error (byte-code "A@\207" [msg] 1))) point-at-bol org-end-of-subtree t #1# (progn (incf cnt-flag) (org-toggle-tag "FLAGGED" 'on) (and note (org-entry-put nil "THEFLAGGINGNOTE" note))) assoc point-at-eol note nil markerp marker-buffer org-mobile-timestamp-buffer 2 " " "BAD REFERENCE " throw next "BAD FLAG " re-search-forward "^** Old value[ 	]*$" 0 outline-next-heading "^** New value[ 	]*$" org-back-over-empty-lines string-match "\\S-" mapconcat identity org-split-string org-trim "\n" "\\n" "body" (byte-code "\212\304	!\203\305	!q\210\212	\206`b\210\306\n!\210\307\310\311\312F\235\2042\313\314 \235\2032\315\316\317p!\"\210+\304\207" [id-pos #2=#:--mpom cmd data markerp marker-buffer eval "delete" "archive" "archive-sibling" "addheading" "FLAGGED" org-get-tags add-to-list org-mobile-last-flagged-files buffer-file-name] 5) ((error (byte-code "\302\207" [msg org-mobile-error nil] 1))) org-pop-to-buffer-same-window "EXECUTION FAILED" org-mobile-action-alist cmd org-inhibit-logging old new buf-list cnt-error bos-marker marker org-mobile-error] 6) save-buffer message "%d new, %d edits, %d flags, %d errors" sit-for cnt-error cnt-flag cnt-edit cnt-new bos-marker marker] 10 (#$ . 25739) nil])
#@68 Time stamp buffer BUF, just to make sure its checksum will change.
(defalias 'org-mobile-timestamp-buffer #[(buf) "rq\210\212\214~\210eb\210\301\302\303\304#\203\305\225b\210`\306\225|\210\202(\307\310!\203(\305y\210\311\312\313!\314\261+\207" [buf re-search-forward "^\\([ 	]*\\)#\\+LAST_MOBILE_CHANGE:.*\n?" nil t 1 0 looking-at ".*?-\\*-.*-\\*-" "#+LAST_MOBILE_CHANGE: " format-time-string "%Y-%m-%d %T" "\n"] 4 (#$ . 28842)])
#@1391 Parse the entry at point for shortcuts and expand them.
These shortcuts are meant for fast and easy typing on the limited
keyboards of a mobile device.  Below we show a list of the shortcuts
currently implemented.

The entry is expected to contain an inactive time stamp indicating when
the entry was created.  When setting dates and
times (for example for deadlines), the time strings are interpreted
relative to that creation date.
Abbreviations are expected to take up entire lines, just because it is so
easy to type RET on a mobile device.  Abbreviations start with one or two
letters, followed immediately by a dot and then additional information.
Generally the entire shortcut line is removed after action have been taken.
Time stamps will be constructed using `org-read-date'.  So for example a
line "dd. 2tue" will set a deadline on the second Tuesday after the
creation date.

Here are the shortcuts currently implemented:

dd. string             set deadline
ss. string             set scheduling
tt. string             set time tamp, here.
ti. string             set inactive time

tg. tag1 tag2 tag3     set all these tags, change case where necessary
td. kwd                set this todo keyword, change case where necessary

FIXME: Hmmm, not sure if we can make his work against the
auto-correction feature.  Needs a bit more thinking.  So this function
is currently a noop.
(defalias 'org-mobile-smart-read #[nil "\300\207" ["Parse the entry at point for shortcuts and expand them.\nThese shortcuts are meant for fast and easy typing on the limited\nkeyboards of a mobile device.  Below we show a list of the shortcuts\ncurrently implemented.\n\nThe entry is expected to contain an inactive time stamp indicating when\nthe entry was created.  When setting dates and\ntimes (for example for deadlines), the time strings are interpreted\nrelative to that creation date.\nAbbreviations are expected to take up entire lines, just because it is so\neasy to type RET on a mobile device.  Abbreviations start with one or two\nletters, followed immediately by a dot and then additional information.\nGenerally the entire shortcut line is removed after action have been taken.\nTime stamps will be constructed using `org-read-date'.  So for example a\nline \"dd. 2tue\" will set a deadline on the second Tuesday after the\ncreation date.\n\nHere are the shortcuts currently implemented:\n\ndd. string             set deadline\nss. string             set scheduling\ntt. string             set time tamp, here.\nti. string             set inactive time\n\ntg. tag1 tag2 tag3     set all these tags, change case where necessary\ntd. kwd                set this todo keyword, change case where necessary\n\nFIXME: Hmmm, not sure if we can make his work against the\nauto-correction feature.  Needs a bit more thinking.  So this function\nis currently a noop."] 1 (#$ . 29286)])
(defalias 'org-mobile-locate-entry #[(link) "\304\305\"\203\306\307\310\"\311\"\207\304\312\"\204=\304\313\"\205^\307\310\"\314	!\315	\n\"\212\316	!\210db\210\317 \210db\210\320 *\207\307\310\"\307\321\"\314	!\315	\n\"\322\314\323\324\"\"\325	B!*\207" [link file org-directory path string-match "\\`id:\\(.*\\)$" org-id-find match-string 1 marker "\\`olp:\\(.*?\\):\\(.*\\)$" "\\`olp:\\(.*?\\)$" org-link-unescape expand-file-name find-file newline point-marker 2 mapcar org-split-string "/" org-find-olp] 5])
#@374 Edit item WHAT in the current entry by replacing OLD with NEW.
WHAT can be "heading", "todo", "tags", "priority", or "body".
The edit only takes place if the current value is equal (except for
white space) the OLD.  If this is so, OLD will be replace by NEW
and the command will return t.  If something goes wrong, a string will
be returned that indicates what went wrong.
(defalias 'org-mobile-edit #[(what old new) "\306\211\211\211\f;\203\307\f!\f\310>\203]\311 
\312\232\203)\313\314!\210\315 \202F
\232\2033\316\202F@\232\204HA\316=\204H\317A>\203T\313
\206N\320!\210\316\202F\321\322@#\202F\f\323=\203\263\324 
\205n\325
\326\"@\205y\325@\326\"\327	\"\203\205\316\202F\327\n\"\204\232A\316=\204\232\323A>\203\242\330	!\210\316\202F\321\331@\206\252\332\206\257\332#\202F\f\333=\203\334B!\205F\335\225\205\313\336\335!\337\335O\211
\232\203\326\316\202F@\232\204\353A\316=\204\353\323A>\203\367\340
\205\363\341
!!\202F\321\342@#\202F\f\343=\203K\334B!\205F\336\344!\211
\232\203\316\202F@\232\2040A\316=\2040\343A>\203E\344\224b\210
c\210``G\\|\210\345\306\346\"\202F\321\347!\202F\f\350=\203n\351 \203c\352\210\353\316!\210\354 \210\202i\355 \210\356c\210
c\202F\f\357=\203\265\360 \210\361
!C\212\362C!\203\212\363C!q\210\212C\206\221`b\210\351 \203\253\364D \352\"\365\316\211\"\210\366!\210\202\257\366\352!\210+\367 \202F\f\370=\203\300\367 \202F\f\371=\203\313\372 \202F\f\373=\203\326\374 \202F\f\375=\205F\376 Td^\212\377 \210`){\201E\201F\"\204\366\306\201G
\"\203\316\202F\201G@\"\204A\316=\204\375A>\203A\212\352\210\201H
\261\210n\204/\201Hc\210`\201I\316!\210\377 \210`|\210)\316\202F\321\201J!,\207" [level new1 old1 current what new nil intern (todo todostate) org-get-todo-state "DONEARCHIVE" org-todo done org-archive-subtree-default t todo none error "State before change was expected as \"%s\", but is \"%s\"" tags org-get-tags org-split-string ":+" org-mobile-tags-same-p org-set-tags-to "Tags before change were expected as \"%s\", but are \"%s\"" "" priority looking-at 3 match-string 2 org-priority string-to-char "Priority was expected to be %s, but is %s" heading 4 org-set-tags align "Heading changed in MobileOrg and on the computer" addheading org-on-heading-p 1 org-insert-heading-respect-content org-demote beginning-of-line "* " refile org-copy-subtree org-mobile-locate-entry markerp marker-buffer org-get-valid-level org-end-of-subtree org-paste-subtree org-cut-subtree delete archive org-archive-subtree archive-sibling org-archive-to-archive-sibling body point-at-eol outline-next-heading old org-mobile-force-mobile-change org-complex-heading-regexp #1=#:--mpom outline-level string-match "\\S-" org-mobile-bodies-same-p "\n" org-back-to-heading "Body was changed in MobileOrg and on the computer"] 5 (#$ . 32706)])
#@33 Are the two tag lists the same?
(defalias 'org-mobile-tags-same-p #[(list1 list2) "\302	\"\206\302	\"?\207" [list1 list2 org-delete-all] 3 (#$ . 35610)])
#@264 Compare if A and B are visually equal strings.
We first remove leading and trailing white space from the entire strings.
Then we split the strings into lines and remove leading/trailing whitespace
from each line.  Then we compare.
A and B must be strings or nil.
(defalias 'org-mobile-bodies-same-p #[(a b) "\204\n	\204\n\302\207\203	\204\303\207\304!\304	!\305\306\307\310\"\311#\305\306\307	\310\"\311#	\232\207" [a b t nil org-trim mapconcat identity org-split-string "[ 	]*\n[ 	]*" "\n"] 5 (#$ . 35775)])
(provide 'org-mobile)

MMCT - 2023