superguaricho / foxdot-mode

FoxDot Mode for Emacs
GNU General Public License v3.0
5 stars 1 forks source link

Error after require #1

Open poulpoulsen opened 2 years ago

poulpoulsen commented 2 years ago

hello, i just test your mode for foxdot, but unfortunately i got an error just with the command require. info: Emacs 28.0.90 on fedora 34.

here is the message: Debugger entered--Lisp error: (wrong-number-of-arguments setq 3) (setq fd-font-lock-keywords (list '("\"[^\\].*\"" . font-lock-string-face) '("'..\\(.\\|\n\\)*'..\\|#.*$" . font-lock-comment-face) (cons (concat "\\_<" (regexp-opt fd-keywords) "\\_>") 'font-lock-keyword-face) (cons (concat "\\_<" (regexp-opt fd-functions) "\\_>") 'font-lock-function-name-face) '("^[a-z]*[^(][a-zA-Z]*[^(>]" . font-lock-function-name-face) '(">> " . font-lock-reference-face)) "Additional expressions to highlight infoxdot-mod...") eval-buffer(#<buffer *load*> nil "/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." nil t) ; Reading at buffer position 25114 load-with-code-conversion("/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." "/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." nil t) require(foxdot-mode) eval((require 'foxdot-mode) t) eval-expression((require 'foxdot-mode) nil nil 127) funcall-interactively(eval-expression (require 'foxdot-mode) nil nil 127) call-interactively(eval-expression nil nil) command-execute(eval-expression) any ideas?

Regards Poul

superguaricho commented 2 years ago

Hello Poul

Thanks for write.

Yes is a bug in the foxdot-mode.el file, line 679.

"(setq fd-font-lock-keywords" must be "(defvar fd-font-lock-keywords"

I have fixed this.

Please, let me know any problem with this code, I haven't updated this repository in a long time.

Greetings

Numa

El sáb, 4 dic 2021 a las 13:58, poulpoulsen @.***>) escribió:

hello, i just test your mode for foxdot, but unfortunately i got an error just with the command require. info: Emacs 28.0.90 on fedora 34.

here is the message: Debugger entered--Lisp error: (wrong-number-of-arguments setq 3) (setq fd-font-lock-keywords (list '("\"[^\].\"" . font-lock-string-face) '("'..\(.\|\n\)'..\|#.$" . font-lock-comment-face) (cons (concat "\<" (regexp-opt fd-keywords) "\>") 'font-lock-keyword-face) (cons (concat "\<" (regexp-opt fd-functions) "\>") 'font-lock-function-name-face) '("^[a-z][^(][a-zA-Z][^(>]" . font-lock-function-name-face) '(">> " . font-lock-reference-face)) "Additional expressions to highlight infoxdot-mod...") eval-buffer(#<buffer load*> nil "/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." nil t) ; Reading at buffer position 25114 load-with-code-conversion("/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." "/home/held/.emacs.d/contrib-lisp/foxdot-mode/foxdo..." nil t) require(foxdot-mode) eval((require 'foxdot-mode) t) eval-expression((require 'foxdot-mode) nil nil 127) funcall-interactively(eval-expression (require 'foxdot-mode) nil nil 127) call-interactively(eval-expression nil nil) command-execute(eval-expression) any ideas?

Regards Poul

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPOCPTFXUIFE7I3PLNTUPJJDRANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

poulpoulsen commented 2 years ago

yes now it starts. thanks!

but if i input a statement, then C-c C-c on the line only show Keyboard quit. test-tone works

also a warning appears after startup emacs: .emacs.d/contrib-lisp/foxdot-mode/foxdot-mode.el: Warning: (lambda nil ...) quoted with ' rather than with #'

any idea for both?

Regards Poul

superguaricho commented 2 years ago

if i input a statement, then C-c C-c on the line only show Keyboard quit.

Umm, that is important. I don't have that problem.

First, you must be sure that the bar (the mode line) below the buffer where you type foxdot code displays something as (Python Foxdot ...).

C-c C-c key is bound to 'foxdot-run-line' command. Put the cursor on the line that you want execute and type: Alt-x foxdot-runline ENTER If you heard sounds, then the problem is the foxdot-mode keymap. Type: "C-h C-k" "C-c C-c". This shows a Help buffer that informs you what command is bound to those keys. If the command is not 'foxdot-run-line', then the problem is another mode active in your buffer. Please tell me what command is bound to C-c C-c.

also a warning appears after startup emacs: .emacs.d/contrib-lisp/foxdot-mode/foxdot-mode.el: Warning: (lambda nil ...) quoted with ' rather than with #'

That is fixed, though I had no problems with that. I believe it is because I use Emacs 27.2.

Thanks a lot for testing these codes Paul.

Greetings Numa

El lun, 6 dic 2021 a las 12:20, poulpoulsen @.***>) escribió:

yes now it starts. thanks!

but if i input a statement, then C-c C-c on the line only show Keyboard quit. test-tone works

also a warning appears after startup emacs: .emacs.d/contrib-lisp/foxdot-mode/foxdot-mode.el: Warning: (lambda nil ...) quoted with ' rather than with #'

any idea for both?

Regards Poul

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1#issuecomment-986931494, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPM4YFXCBGDXYLIILFTUPTPGJANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

poulpoulsen commented 2 years ago

hello, hmmh, here C-c C-c is bound to: C-c C-c runs the command comint-interrupt-subjob (found in inferior-python-mode-map), which is an interactive compiled Lisp function in ‘comint.el’.

It is bound to C-c C-c, .

(comint-interrupt-subjob)

Interrupt the current subjob.

the prompt shows FoxDot>>> the modeline shows Inferior Python:run Shell-compile

Does it help? Poul

superguaricho commented 2 years ago

Hi Poul

Does it help?

Yes, thank you.

Now I understand what happens. I've fixed a lot of bugs and updated the code in the git repository. Please, remove the version that you are using and clone this new version of foxdot-mode.

The bad old version had a problem with the layouts. I've fixed it.

I'm passing you a animated gif that shows how is started FoxDot from Emacs using this foxdot-mode.

You write the code in somefile.foxdot buffer. That buffer is the work space. You have to type the command keys over the lines that you write there, in somefile.foxdot, not in the FoxDot buffer.

Greetings!

El sáb, 18 dic 2021 a las 9:43, poulpoulsen @.***>) escribió:

hello, hmmh, here C-c C-c is bound to: C-c C-c runs the command comint-interrupt-subjob (found in inferior-python-mode-map), which is an interactive compiled Lisp function in ‘comint.el’.

It is bound to C-c C-c, .

(comint-interrupt-subjob)

Interrupt the current subjob.

the prompt shows FoxDot>>> the modeline shows Inferior Python:run Shell-compile

Does it help? Poul

— Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1#issuecomment-997204374, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPLXUJNFHAN2TGUV3GLURSFXDANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

poulpoulsen commented 2 years ago

hello, i just update and i got a step further on :-)

unfortunately a new error after test with your example: Traceback (most recent call last): File "", line 19, in __PYTHON_EL_eval File "/home/held/test.foxdot", line 1, in p1 >> pluck([12], dur=0.25, echo=0.8) NameError: name 'p1' is not defined

any ideas?

superguaricho commented 2 years ago

Hi poul

The python interpreter is not loading the FoxDot library. In the first line of the "test.foxdot" buffer write:

from FoxDot import *

and send it to the python interpreter using C-c C-c.

Test again any FoxDot line.

If it still doesn't work, you have not instaled FoxDot.

If you have not installed the python FoxDot library, install it. Follow the instructions in the foxdot-mode README (from Emacs do Alt-shift-! and "pip install FoxDot" or for the linux terminal do "pip install FoxDot".

Then you have to install the SuperCollider FoxDot quark. Read the README in the foxdot-mode git repository.

Test and tell me about this.

El mar, 21 dic 2021 a las 12:52, poulpoulsen @.***>) escribió:

hello, i just update and i got a step further on :-)

unfortunately a new error after test with your example: Traceback (most recent call last): File "", line 19, in __PYTHON_EL_eval File "/home/held/test.foxdot", line 1, in p1 >> pluck([12], dur=0.25, echo=0.8) NameError: name 'p1' is not defined

any ideas?

— Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1#issuecomment-998937850, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPKMJQF7CHX4TBRUGELUSCWDFANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

poulpoulsen commented 2 years ago

hello, i tested the lines from you. and it seems, that my python installation do not automatic recognize and load the foxdot extension. it is installed in /usr/local/lib/python3.9/site-packages/ and as far as i understand, packages for fedora should be installed in /usr/local/lib64/python3.9/site-packages/

is this true? if so, is it possible to install foxdot there?

if i first C-c C-c on the import line and then on the line with sound, all works.

btw: i test the loadpath of python3. it seems, that both are in. therefore foxdot is recognized after the first line.

i think the problem is, that foxdot is not automatically load, if i run foxdot-mode in emacs. usually its not convenient, to put this line in a foxdot file.

is it possible to change that behaviour?

regards poul

superguaricho commented 2 years ago

Hello Poul

Thanks for your observations.

i tested the lines from you. ... if i first C-c C-c on the import line and then on the line with sound, all works.

Good! That is important. The system is working.

i think the problem is, that foxdot is not automatically load, if i run foxdot-mode in emacs.

Yes, but I don't know why it doesn't work on your system. This tells me that the code is not independent of hardware or operating system, although I have found some bugs

I have rewritten a lot of the FoxDot startup code. It is not easy to synchronize function calls with events during interpreter startup. Please delete foxdot-mode on your system and clone the new version.

Besides C-c C-s or Alt-x foxdot, I've added another approximation to FoxDot startup: type C-c C-i or Alt-x foxdot-sc3-foxdot-run [ENTER]. I think the latter is a bit faster.

... foxdot is not automatically load, if i run foxdot-mode in emacs. usually its not convenient, to put this line in a foxdot file.

Yes you are right.

Please write me any problem.

Greetings

El mié, 22 dic 2021 a las 14:03, poulpoulsen @.***>) escribió:

hello, i tested the lines from you. and it seems, that my python installation do not automatic recognize and load the foxdot extension. it is installed in /usr/local/lib/python3.9/site-packages/ and as far as i understand, packages for fedora should be installed in /usr/local/lib64/python3.9/site-packages/

is this true? if so, is it possible to install foxdot there?

if i first C-c C-c on the import line and then on the line with sound, all works.

btw: i test the loadpath of python3. it seems, that both are in. therefore foxdot is recognized after the first line.

i think the problem is, that foxdot is not automatically load, if i run foxdot-mode in emacs. usually its not convenient, to put this line in a foxdot file.

is it possible to change that behaviour?

regards poul

— Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1#issuecomment-999766853, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPN34V35NHQYM3N7X4DUSIHGDANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

poulpoulsen commented 2 years ago

hello again, some bad news: i read, that the foxdot developer will not work on it anymore. so development stalled, as far as i understand. therefor i will have a look to other musical languages. for example i played a bit with tidalcycles - seems wonderful. overtone i do not understand well.

will have a look further.

thanks for your development! Regards Poul

superguaricho commented 2 years ago

i read, that the foxdot developer will not work on it anymore

Yes, sad news.

Tidalcycles is fine. I use it a lot. Almost all the routines in foxdot mode I use it with Tidal, Hsc3, Vivid and Euterpea. These programs are not in Python, but in Haskell.

Tidal and Hsc3 use Emacs but don't include code to start supercollider or to handle layouts. I wrote Emacs lisp codes to use with Tidal if you want test it. That was the idea with FoxDot mode.

With Euterpea I'm using other approach to use the Haskell interpreter, ghci.

Thank for your feedback.

Greetings

El vie, 7 ene 2022 a las 14:31, poulpoulsen @.***>) escribió:

hello again, some bad news: i read, that the foxdot developer will not work on it anymore. so development stalled, as far as i understand. therefor i will have a look to other musical languages. for example i played a bit with tidalcycles - seems wonderful. overtone i do not understand well.

will have a look further.

thanks for your development! Regards Poul

— Reply to this email directly, view it on GitHub https://github.com/superguaricho/foxdot-mode/issues/1#issuecomment-1007638829, or unsubscribe https://github.com/notifications/unsubscribe-auth/AMAXGPP7WOJJLIAL3XXQ7I3UU4WQXANCNFSM5JLZXCUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>