* [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)]
@ 2023-02-26 4:13 Mark A. Hershberger
2023-02-26 10:33 ` Ihor Radchenko
0 siblings, 1 reply; 5+ messages in thread
From: Mark A. Hershberger @ 2023-02-26 4:13 UTC (permalink / raw)
To: emacs-orgmode
Loading the following file with "emacs -Q", I'm un-able to type 'C-c
C-c' in the source block to execute it.
#+begin_src elisp
(defun count-lines (dir)
"Number of lines in *.php files in a DIR."
(let ((extdir (concat "../mediawiki/extensions/" dir)))
(if (not (f-directory-p extdir))
""
(let ((files (directory-files-recursively extdir "\\.php$"))
(count 0))
(dolist (file files)
(setq count (+ count (-reduce '+ (mapcar 'file-lines (list file))))))
count))))
#+end_src
When I do the following error appears:
⛔ Warning (org-element-cache): org-element--cache: Org parser error in tmp.org::4740. Resetting.
The error was: (wrong-number-of-arguments (lambda (dir) "Number of lines in *.php files in a DIR." (let ((extdir (concat "../mediawiki/extensions/" dir))) (if (not (f-directory-p extdir)) "" (let ((files (directory-files-recursively extdir "\\.php$")) (count 0)) (dolist (file files) (setq count (+ count (-reduce '+ (mapcar 'file-lines (list file)))))) count)))) 2)
Backtrace:
nil
Please report this to Org mode mailing list (M-x org-submit-bug-report).
Emacs : GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.36, cairo version 1.16.0)
of 2023-02-23
Package: Org mode version 9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)]
2023-02-26 4:13 [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)] Mark A. Hershberger
@ 2023-02-26 10:33 ` Ihor Radchenko
2023-02-26 10:38 ` Ihor Radchenko
0 siblings, 1 reply; 5+ messages in thread
From: Ihor Radchenko @ 2023-02-26 10:33 UTC (permalink / raw)
To: Mark A. Hershberger; +Cc: emacs-orgmode
"Mark A. Hershberger" <mah@everybody.org> writes:
> Loading the following file with "emacs -Q", I'm un-able to type 'C-c
> C-c' in the source block to execute it.
>
> #+begin_src elisp
> (defun count-lines (dir)
> ...
> When I do the following error appears:
>
> ⛔ Warning (org-element-cache): org-element--cache: Org parser error in tmp.org::4740. Resetting.
> The error was: (wrong-number-of-arguments (lambda (dir)
Canceled.
You are re-defining a built-in Elisp function `count-lines'. This
function is used by Org parser. That's why you are getting an error.
Re-defining built-in functions is generally dangerous. You need to know
what you are doing.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)]
2023-02-26 10:33 ` Ihor Radchenko
@ 2023-02-26 10:38 ` Ihor Radchenko
2023-02-26 14:54 ` Mark A. Hershberger
0 siblings, 1 reply; 5+ messages in thread
From: Ihor Radchenko @ 2023-02-26 10:38 UTC (permalink / raw)
To: Mark A. Hershberger; +Cc: emacs-orgmode
Ihor Radchenko <yantar92@posteo.net> writes:
> Re-defining built-in functions is generally dangerous. You need to know
> what you are doing.
I recommend reading D.1 Emacs Lisp Coding Conventions section of Elisp
manual. In particular the paragraph about naming symbols and functions:
• You should choose a short word to distinguish your program from
other Lisp programs. The names of all global symbols in your
program, that is the names of variables, constants, and functions,
should begin with that chosen prefix. Separate the prefix from the
rest of the name with a hyphen, ‘-’. This practice helps avoid
name conflicts, since all global variables in Emacs Lisp share the
same name space, and all functions share another name space(1).
Use two hyphens to separate prefix and name if the symbol is not
meant to be used by other packages.
It is common among Emacs users to prefix personal functions with
"username/". Like `username/count-lines'.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)]
2023-02-26 10:38 ` Ihor Radchenko
@ 2023-02-26 14:54 ` Mark A. Hershberger
2023-02-26 15:06 ` Ihor Radchenko
0 siblings, 1 reply; 5+ messages in thread
From: Mark A. Hershberger @ 2023-02-26 14:54 UTC (permalink / raw)
To: Ihor Radchenko; +Cc: Mark A. Hershberger, emacs-orgmode
Thanks for pointing out that I'm re-defining an internal function.
If I can reopen this issue, it would be good if the error message actually said that.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)]
2023-02-26 14:54 ` Mark A. Hershberger
@ 2023-02-26 15:06 ` Ihor Radchenko
0 siblings, 0 replies; 5+ messages in thread
From: Ihor Radchenko @ 2023-02-26 15:06 UTC (permalink / raw)
To: Mark A. Hershberger; +Cc: Mark A. Hershberger, emacs-orgmode
"Mark A. Hershberger" <mah@nichework.com> writes:
> If I can reopen this issue, it would be good if the error message actually said that.
Org has no idea which functions are built-in. Org has no idea which
functions are re-defined and just uses modified versions if the user
prefers re-defined version. Emacs gives this power to users. Use it with
caution. Or not use. Following naming conventions helps.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-02-26 15:07 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-26 4:13 [BUG] org parser error [9.6.1 (9.6.1-g351279 @ /home/mah/.emacs.d/straight/build/org/)] Mark A. Hershberger
2023-02-26 10:33 ` Ihor Radchenko
2023-02-26 10:38 ` Ihor Radchenko
2023-02-26 14:54 ` Mark A. Hershberger
2023-02-26 15:06 ` Ihor Radchenko
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).